1

このコマンドをバッチ ファイルでローカルに実行しようとすると、期待どおりの結果が得られます

find $DIR -name "*" -type f -exec ls -alo {} \; | awk '{printf "%-12s %-1s %-1s %-1s %-1s \n",$4,substr($8,20),$9,$10,$11}' | sort -k 1 -n > file_count

バッチ ファイルを ssh 経由でリモートで実行すると、コマンドが壊れます。

+ find /cygdrive/h/AltaroHyperVBackup -name '*' -type f -exec ls -alo '{}' ';'
+ awk '{printf "%-12s %-1s %-1s %-1s %-1s \n",$4,substr($8,20),$9,$10,$11}'
**FIND: Invalid switch**

リモートで呼び出されたときにバッチ ファイルが正しく実行されるようにするには、バッチ ファイルをどのようにコーディングすればよいですか?

4

2 に答える 2

0

あなたがそれがうまくいく発見の周りに引用符を置くならば、私は見つけました。コマンドの最初の部分を次のようにします。

ssh NODE "find $DIR -type f -exec ls -alo {} \\; "

-name "*"は冗長だと思うので、削除しました。

于 2012-12-20T23:06:11.047 に答える