0

「最新のファイルをディレクトリにコピーする」ようなことをしようとしています。バッククォートを使用して次のコマンドの単純なコマンドを作成しました。これは、空白が埋め込まれていないファイル名に対して正常に機能します。

cp -rp `ls -1d searchstring | head -1` destination

ご覧のとおり、返されたファイルにスペースが含まれていない場合、これは正常に機能するはずです。ただし、そのようなスペースがある場合、これは明らかに機能しません。

バックティックの出力を処理する方法か、別の方法が必要です。

4

1 に答える 1

2

二重引用符を追加することで、コマンド置換の結果を単一の単語として扱うことができます。

cp -rp "`ls -t searchstring | head -n 1`" destination

変数に代入する場合、二重引用符は必要ありません。a=`uptime`と同等a="`uptime`"です。

于 2012-08-28T00:34:50.587 に答える