如何复制文件并将其粘贴为不同的名称?

如何复制文件并将其粘贴为不同的名称?

test.txt我在目录中有一个文件A/B。我想复制test.txt并重A/C命名它newtest.txt

我知道我可以使用cpmv命令来执行此操作,但问题是已经有一个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,但这似乎很长。

有没有更快/更好的方法来做到这一点?

答案1

做就是了

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

使用

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

检查../C/newtest.txt(ie, A/C/newtest.txt) 是否已经存在并要求确认。 (我几乎从来没有故意地覆盖文件,因此我cp每次cp -i执行cp.但小心不要破坏你不想破坏的文件,也不要依赖别名来拯救你,这也是明智的。)

答案2

你有

.
`-- 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

会那样做的。

相关内容