SFTPサーバーがあります([Eメール保護])。それに接続して、以下を含むファイルを検索しようとしています。。 txtパス(/files/base/incomming)から(.txt)を含む各ファイルの行数を取得します。次のコマンドを使用してこれを達成しようとしましたが、無効なコマンドで発生しました。
echo "wc -l *.txt*"|sftp -q [email protected]:/files/base/incomming
o/p
sftp>
invalid command
この問題を解決する方法はありますか?
ベストアンサー1
sftp
シェルはフォークされないため、一般的なコマンドは使用できません。合格できると仮定すると、ssh
次のものを使用できます。
ssh [email protected] 'ls /files/base/incomming/*.txt' | wc -l
または
ssh [email protected] 'ls /files/base/incomming/*.txt | wc -l'
質問に記載されている作業を完了してください。
(何らかの理由で)使用するには、いずれかのコマンドをsftp
使用する必要があります(相手がワイルドカードを処理する方法を知っていることを願っていますftp
)。ftpd
echo 'ls -l /files/base/incomming/*.txt' | sftp [email protected] | wc -l