复制命令 cp
cp (复制文件或目录)
范例一:用root身份,将主文件夹下的 .bashrc 复制到 /tmp 下,并更名为 bashrc

重复作两次动作,由于 /tmp 下面已经存在 bashrc 了,加上 -i 选项后, 则在覆盖前会询问使用者是否确定!可以按下 n 或者 y 来二次确认呢!

范例二:变换目录到/tmp,并将/var/log/wtmp复制到/tmp且观察属性:

注意上面的特殊字体,在不加任何选项的情况下,文件的某些属性/权限会改变;
这是个很重要的特性!要注意!还有,连文件创建的时间也不一样了!
那如果你想要将文件的所有特性都一起复制过来该怎办?可以加上 -a 实现!如下所示:
这个 cp 的功能很多,由于我们常常会进行一些数据的复制,所以也会常常用到这个指令的。 一般来说,我们如果去复制别人的数据 (当然,该文件你必须要有 read 的权限才行啊!) 时, 总是希望复制到的数据最后是我们自己的,所以,在默认的条件中, cp 的来源文件与目的文件的权限是不同的,目的文件的拥有者通常会是指令操作者本身。举例来说, 上 面的范例二中,由于我是 root 的身份,因此复制过来的文件拥有者与群组就改变成为 root 所 有了! 这样说,可以明白吗?
由于具有这个特性,因此当我们在进行备份的时候,某些需要特别注意的特殊权限文件, 例 如密码档 (/etc/shadow) 以及一些配置文件,就不能直接以 cp 来复制,而必须要加上 -a 或者是 -p 等等可以完整复制文件权限的选项才行!另外,如果你想要复制文件给其他的使用 者, 也必须要注意到文件的权限(包含读、写、执行以及文件拥有者等等), 否则,其他人 还是无法针对你给予的文件进行修订的动作喔!注意注意!
范例三:复制 /etc/ 这个目录下的所有内容到 /tmp 下面

如果是目录则不能直接复制,要加上 -r 的选项
还是要再次的强调喔! -r 是可以复制目录,但是,文件与目录的权限可能会被改变
所以,也可以利用“ cp -a /etc /tmp ”来下达指令!尤其是在备份的情况下!
范例四:将范例一复制的 bashrc 创建一个链接文件 (symbolic link)


使用 -l 及 -s 都会创建所谓的链接文件(link file),但是这两种链接文件却 有不一样的情况。这是怎么一回事啊? 那个 -l 就是所谓的实体链接(hard link),至于 -s 则 是符号链接(symbolic link), 简单来说,bashrc_slink 是一个“捷径”,这个捷径会链接到 bashrc去!所以你会看到文件名右侧会有个指向(->)的符号!
范例五:若 ~/.bashrc 比 /tmp/bashrc 新才复制过来

这个 -u 的特性,是在目标文件与来源文件有差异时,才会复制的。 所以,比较常被用于“备份”的工作当中!
范例六:将范例四造成的 bashrc_slink 复制成为 bashrc_slink_1 与bashrc_slink_2


这个例子也是很有趣喔!原本复制的是链接文件,但是却将链接文件的实际文件复制过来了 。也就是说,如果没有加上任何选项时,cp复制的是原始文件,而非链接文件的属性! 若要复制链接文件的属性,就得要使用 -d 的选项了!如 bashrc_slink_2 所示。
范例七:将主文件夹的 .bashrc 及 .bash_history 复制到 /tmp 下面

可以将多个数据一次复制到同一个目录去!最后面一定是目录!
例题:你能否使用 用户的身份(这里为ldz),完整的复制/var/log/wtmp文件到/tmp下面,并更名为 ldz_wtmp呢?
实际做看看的结果如下:

由于 ldz 的身份并不能随意修改文件的拥有者与群组,因此虽然能够复制wtmp的相关权限 与时间等属性, 但是与拥有者、群组相关的,原本 ldz 身份无法进行的动作,即使加上 - a 选项,也是无法达成完整复制权限的! 总之,由于 cp 有种种的文件属性与权限的特性,所以,在复制时,你必须要清楚的了解到: 是否需要完整的保留来源文件的信息? 来源文件是否为链接文件 (symbolic link file)? 来源文件是否为特殊的文件,例如 FIFO, socket 等? 来源文件是否为目录?
本文详细介绍了Linux中复制命令`cp`的使用,包括如何复制文件和目录,以及各种选项如`-i`, `-a`, `-r`, `-l`, `-s`, `-u`, `-d`的功能和应用场景。通过实例演示了文件权限、链接文件(实体链接和符号链接)的复制,强调了在备份和权限管理中需要注意的事项。"
97802040,8485263,顺序表与链表:概念、结构与优缺点,"['数据结构', '顺序存储', '链式存储', '数组', '链表']


1207

被折叠的 条评论
为什么被折叠?



