Rename

如何復製文件並將其粘貼為不同的名稱?

  • June 19, 2018

test.txt在目錄中有一個文件A/B。我想複製test.txt並重A/C命名它newtest.txt

我知道我可以使用cpandmv命令來執行此操作,但問題是已經有一個test.txtin A/C,並且已經有一個newtest.txtinA/B並且我不想覆蓋這些文件中的任何一個。

我知道我在技術上可以做我想做的事mv test.txt ./verynewtest.txt && cp verynewtest.txt ../C && mv verynewtest.txt test.txt && cd ../C && mv verynewtest.txt newtest.txt,但這似乎真的很長。

有沒有更快/更好的方法來做到這一點?

做就是了

$ cd A/B
$ cp test.txt ../C/newtest.txt

採用

$ cp -i test.txt ../C/newtest.txt

檢查../C/newtest.txt(ie, A/C/newtest.txt) 是否已經存在並請求確認。(我幾乎從不故意覆蓋文件,所以我每次做 a 時都會使用別名cp來獲得這種保護。但小心不要破壞你不想破壞的文件,也不要依賴別名來拯救你。 .)cp -i``cp

你有

.
`-- A
   |-- B
   |   |-- newtest.txt
   |   `-- test.txt
   `-- C
       `-- test.txt

而你想要

.
`-- A
   |-- B
   |   |-- newtest.txt
   |   `-- test.txt
   `-- C
       |-- newtest.txt
       `-- test.txt

哪裡A/C/newtest.txt有副本A/B/test.txt

命令

cp A/B/test.txt A/C/newtest.txt

會這樣做。

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