Linux命令之cp详解程序员

cp [选项] [–T] 源文件 目标文件

cp [选项] 源文件 目录

cp [选项] –t 目录 源文件

将源文件复制至目标文件,或将多个源文件复制至目标目录

(1).常用选项

补充:符号链接又叫软链接,是一类特殊的文件,这个文件包含了另一个文件的路径名(绝对路径或相对路径)

-a    等于 –dR –preserve=all 
--backup 为每个已存在的目标文件创建备份 
-b    类似于 --backup 但不接受参数 
-d    等于 --no-dereference –preserve=links 
-f     如果目标文件无法打开则将其移除并重试(当-n存在时则不需要再选此参数) 
-i     覆盖前询问(使前面的-n参数失效) 
-n    不要覆盖已存在的文件(使前面的-i参数失效) 
-P,--no-dereference    不跟随源文件中的符号链接 
--preserve     保持指定的属性(默认:模式,所有权,时间戳),如果可能保持附加属性:环境、链接、xattr(文件系统的扩展属性)等 
-R,-r,--recursive   递归复制目录及其子目录内的所有内容 
-s    只创建符号链接而不复制文件 
-t     将所有参数指定的源文件/目录复制至目标目录 
-T    将目标目录视作普通文件 
-v    说明正在做什么(详细显示命令执行操作) 

(2).实例

补充:mkdir用来创建目录;ll约等于ls -l

将文档拷贝到另一个文件夹下,该文件夹下没有同名文档

[ [email protected] 桌面]# mkdir cpDir 
[ [email protected] 桌面]# ll 
总用量  4 
drwxr - xr - x .  2  root  root  4096 4月    3  12:34  cpDir 
[ [email protected] 桌面]# cat >mytext <<EOF 
> this is mytext! 
> EOF 
[ [email protected] 桌面]# ll 
总用量  8 
drwxr - xr - x.  2  root  root  4096 4月    3  12:34  cpDir 
- rw- r - - r- - .  1  root  root    16 4月    3  13:03  mytext 
[ [email protected] 桌面]# cp mytext cpDir 
[ [email protected] 桌面]# ls –l ./cpDir 
总用量  4 
- rw- r - - r- -.  1  root  root  16  4月    3  13:05  mytext 
[ [email protected] 桌面]# cat mytext 
this is mytext! 
[ [email protected] 桌面]# ll 
总用量  8 
drwxr - xr - x.  2  root  root  4096  4月    3  13:05  cpDir 
- rw- r - - r- - .  1  root  root    16  4月    3  13:03  mytext 

将文档拷贝到另一个文件夹下,该文件夹下有同名文档,因此会提醒是否覆盖。

[ [email protected] 桌面]# ll 
总用量  8 
drwxr - xr - x.  2  root  root  4096  4月    3  13:05  cpDir 
- rw- r - - r- - .  1  root  root    16  4月    3  13:03  mytext 
[ [email protected] 桌面]# cat >mytext <<EOF 
> Modify the text ! 
> EOF 
[ [email protected] 桌面]# cp mytext cpDir 
cp:是否覆盖“cpDir/mytext”? y 
[ [email protected] 桌面]# cat ./cpDir/mytext 
Modify the text ! 

将newDir拷贝一份到Dir1目录下(当Dir1文件夹存在时);将newDir下的所有东西拷贝一份到新建的Dir2目录(Dir2不存在)

[ [email protected] 桌面]# ll 
总用量  0 
[ [email protected] 桌面]# mkdir newDir 
[ [email protected] 桌面]# touch ./newDir/{text1.txt,text2.txt} 
[ [email protected] 桌面]# ll 
总用量  4 
drwxr - xr - x.  2  root  root  4096  4月    3  15:28  newDir 
[ [email protected] 桌面]# mkdir Dir1 
[ [email protected] 桌面]# cp newDir Dir1 
cp:略过目录“newDir” 
[ [email protected] 桌面]# cp -a newDir Dir1  //存在Dir1 
[ [email protected] 桌面]# cp -a newDir Dir2  //不存在Dir2 
[ [email protected] 桌面]# ll 
总用量  12 
drwxr - xr - x.  3  root  root  4096  4月    3  15:29  Dir1 
drwxr - xr - x.  2  root  root  4096  4月    3  15:28  Dir2 
drwxr - xr - x.  2  root  root  4096  4月    3  15:28  newDir 
[ [email protected] 桌面]# ls ./Dir1  //存在的效果 
newDir 
[ [email protected] 桌面]# ls ./Dir2  //不存在的效果 
text1.txt  text2.txt 

建立一个指向text1.txt的快捷方式 :t1_link

[ [email protected] 桌面]# cp –s newDir newDir_link  //只有-s无法创建文件夹的快捷方式 
cp:略过目录“newDir” 
[ [email protected] 桌面]# ll 
总用量  12 
drwxr - xr - x.  3  root  root  4096  4月    3  15:29  Dir1 
drwxr - xr - x.  2  root  root  4096  4月    3  15:28  Dir2 
drwxr - xr - x.  2  root  root  4096  4月    3  15:28  newDir 
[ [email protected] 桌面]# cd newDir 
[ [email protected] newDir]# ll 
总用量  0 
- rw- r- - r- -.  1  root  root  0  4月    3  15:28  text1.txt 
- rw- r- - r- -.  1  root  root  0  4月    3  15:28  text2.txt 
[ [email protected] newDir]# cp –s text1.txt t1_link 
[ [email protected] newDir]# ll 
总用量  0 
lrwxrwxrwx.  1  root  root  9  4月    4  08:33  t1_link - > text1.txt 
-rw- r- - r- -.  1  root  root  0  4月    3  15:28  text1.txt 
-rw- r- - r- -.  1  root  root  0  4月    3  15:28  text2.txt

创建文件夹的快捷方式

[ [email protected] 桌面]# cp –as newDir newDir_link 
cp:“newDir_link/t1_link”:只能用于当前目录中创建相对的符号链接 
cp:“newDir_link/text1.txt”:只能用于当前目录中创建相对的符号链接 
cp:“newDir_link/text2.txt”:只能用于当前目录中创建相对的符号链接 
[ [email protected] 桌面]# ll 
总用量  16 
drwxr - xr - x.  3  root  root  4096  4月    3  15:29  Dir1 
drwxr - xr - x.  2  root  root  4096  4月    3  15:28  Dir2 
drwxr - xr - x.  2  root  root  4096  4月    3  15:28  newDir 
drwxr - xr - x.  2  root  root  4096  4月    3  15:28  newDir_link

复制一份加上后缀存起来

[ [email protected] 桌面]# touch mytext 
[ [email protected] 桌面]# cp mytext{,.txt} 
[ [email protected] 桌面]# ll 
总用量  16 
drwxr - xr - x.  3  root  root  4096  4月    3  15:29  Dir1 
drwxr - xr - x.  2  root  root  4096  4月    3  15:28  Dir2 
-rw- r - - r - - .  1  root  root     0  4月    4  10:42  mytext 
-rw- r - - r - - .  1  root  root     0  4月    4  10:42  mytext.txt 
drwxr - xr - x.  2  root  root  4096  4月    4  15:28  newDir 
drwxr - xr - x.  2  root  root  4096  4月    4  15:28  newDir_link

参考:http://www.cnblogs.com/MenAngel/p/5468058.html

原创文章,作者:奋斗,如若转载,请注明出处:https://blog.ytso.com/2833.html

(0)
上一篇 2021年7月16日
下一篇 2021年7月16日

相关推荐

发表回复

登录后才能评论