Rename
如何復製文件並將其粘貼為不同的名稱?
我
test.txt
在目錄中有一個文件A/B
。我想複製test.txt
並重A/C
命名它newtest.txt
。我知道我可以使用
cp
andmv
命令來執行此操作,但問題是已經有一個test.txt
inA/C
,並且已經有一個newtest.txt
inA/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
會這樣做。