cp、mv、install

cp命令

复制文件或目录。cp指令用来将一个或者多个源文件或者目录复制到指定的目的文件或目录。它可以将单个源文件复制成一个指定文件名的具体的文件或一个已经存在的目录下。cp指令还支持同时复制多个文件,当一次复制多个文件时,目标文件参数必须是一个已经存在的目录,否则将出现错误。
cp可以允许有多个源,但必须有一个目标,不允许多个目标【一个文件到一个文件,多个文件到一个目录】

复制文件:

示例1
[root@jiakang etc]# cp /etc/passwd /tmp
[root@jiakang etc]# cp /etc/passwd /tmp/passwd.1
[root@jiakang etc]# cp /etc/passwd /tmp/passwd.1
cp:是否覆盖"/tmp/passwd.1"? 

上面分别是复制文件到tmp目录下,第一行还用原来的名字,第二行重新命名为passwd.1,第三行还用passwd.1会询问是否覆盖。

复制目录:

示例2
[root@jiakang tmp]#  cp /etc/rc.d /tmp                   
cp: 略过目录"/etc/rc.d"
[root@jiakang tmp]# cp -r /etc/rc.d /tmp
[root@jiakang tmp]# cp -r /etc/rc.d /tmp/passwd
cp: 无法以目录"/etc/rc.d" 来覆盖非目录"/tmp/passwd"

rc.d是个目录,passwd是个文件。目录复制必须加 -r ,目录不能复制给文件。【红帽目录复制给文件,会是一个软链接】

  • -R 或r 对目录进行复制操作,此选项以递归的操作方式,将指定目录及其子目录中的所有文件复制到指定的目标目录

  • -f 强制覆盖已经存在的目标文件,而不提示用户进行确认。为防止覆盖重要文件,通常不适用此选项

  • -i 在覆盖已存在的目标文件前提示用户进行确认。使用此选项可以防止覆盖掉重要文件,与rm命令一样,root用户使用该命令默认带有-i选项

  • -p 复制文件时保持源文件的所有者、权限信息和以及时间属性

  • -l 为源文件创建硬连接(与“ln”指令的功能相同)。此选项可以节省硬盘空间,但是要求源文件和目的文件必须在同一分区(或文件系统)上,也就是说如果源文件是个软链接,它会复制软链接指向的目标文件。cp命令默认就是 -l效果

  • -P 与-l相反,复制软链接

  • -d 与-P一样,也是复制软连接。如果复制的源文件是符号连接,仅复制符号连接本身,而且保留符号连接所指向的目标文件或者目录

  • -a 与选项“-dpR”的功能相同,保持源文件的原有结构和属性

mv命令

用法、选项和cp基本相同,另外有个-t 选项;
move -t 目标 源【先指定目标再指定源文件】

install命令

install的源必须是文件,也就是说它可以移动文件,但是不能移动目录,它没有-r 选项

  • -t 和上面的mv的-t选项一样

  • -d 可以创建目录

[root@jiakang tmp]# install -d  /tmp/{install.1,install.2}
  • -m 指定权限

    原文作者:Big_fat_cat
    原文地址: https://segmentfault.com/a/1190000008866810
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞