Linux cp 命令行使用注意事项

时间:2022-12-18 18:20:30

1. 如果源文件不存在会有错误提示。

2. 如果使用 -f 参数,并且cp 的是文件,如果目标文件已经存在,此时会替换掉目标文件,并且没有任何提示.

 cp -f test1.txt test2.txt
#此时的test1.txt 会覆盖test2.txt 内容,并且没有提示
     如果目标是文件夹,并且已经存在,此时文件会被复制到目标文件夹下,但是如果不存在,会默认成为文件
cp -f test1.txt  testfolder
#如果testfolder已经存在,test1.txt 会被复制到testfolder目标文件夹下。
#但是如果testfolder 不存在,test1.txt 会被复制到 名为testfolder的文件。

3. cp 文件夹的时候,如果目标文件夹不存在,不加参数时,会报出以下错误
omitting directory 'test'

如果目标文件夹存在,不加参数时,同样会报错:

omitting directory 'test'

4. cp文件时,如果目标文件夹不存在,并且加上参数 -r 时,此时的结果是 会把 源文件夹 复制到 目标文件下,除了文件名不一样,内部结构和源文件相同

cp -r test1 test2
#如果test1目录下有file1,和subfolder1,
#test2目录下有file1,和subfolder1.

但是如果目标文件夹存在时,此时的结果是把源文件 完全复制目标文件下

cp -r test1 test2
#如果文件夹test2存在了,并且是空目录,
#test1 下有file1,subfolder1.
#test2下会只有目录test1,并且test1也包含了file1,subfolder1.