Shell-Script

如何將最新文件從一個目錄複製到另一個目錄?

  • August 11, 2021

我在一個目錄中有 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

執行這個:

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,以便 shell 不會對其輸出進行分詞。

引用自:https://unix.stackexchange.com/questions/195304