私のディレクトリには3つのzipファイルがあります。最新バージョンをバックアップディレクトリにコピーしたいと思います。
私のコードは.sh
他のファイルでは動作しますが、.zip
動作しません。
cp -p `ls -tr1 /Users/Me/Documents/Coffi\ Work/FTP\ Backup\ Shell\ Script/Original/| tail -1` /Users/Me/Documents/Coffi\ Work/FTP\ Backup\ Shell\ Script/Backup1/
それは言う:cp: website3.zip: No such file or directory
ベストアンサー1
これを実行してください:
cp -p "`ls -dtr1 "$SRC_DIR"/* | tail -1`" "$DEST_DIR"
ここではls -d
絶対パスが提供されます。
コマンドはls
絶対パスを返さないため、ファイルをコピーするにはソースディレクトリからコマンドを実行する必要があります。ファイルが存在しない別のディレクトリで実行すると、No such file or directory
エラーが表示されます。
また、パスにスペースがあるため、ls -dtr1 /Users/Me/Documents/Coffi\ Work/FTP\ Backup\ Shell\ Script/Original/* | tail -1
シェルが出力をトークン化しないように引用する必要があります。