あるディレクトリから別のディレクトリに最新のファイルをコピーするには?

あるディレクトリから別のディレクトリに最新のファイルをコピーするには?

私のディレクトリには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シェルが出力をトークン化しないように引用する必要があります。

おすすめ記事