怎么复制并覆盖文件(文件怎么覆盖)

linux中cp命令的功能是将给出的文件或目录拷贝到另一文件或目录中,如果同时指定两个以上的文件或目录,且最后的目的地是一个已存在的目录,则此命令会把前面指定的所有文件或目录复制到该目录中。参数

linux中cp命令的功能是将给出的文件或目录拷贝到另一文件或目录中,如果同时指定两个以上的文件或目录,且最后的目的地是一个已存在的目录,则此命令会把前面指定的所有文件或目录复制到该目录中。

参数

cp [OPTION]

-a 该选项通常在拷贝目录时使用。它保留链接、文件属性,并递归地拷贝目录,其作用等于dpR选项的组合。

-p 此时cp除复制源文件的内容外,还将把其修改时间和访问权限也复制到新文件中。

-l 不作拷贝,只是链接文件。

-d 拷贝时保留链接。若来源文件为连结文件的属性(link file),则复制连结文件属性而非档案本身;

-f 删除已经存在的目标文件而不提示。为强制 (force) 的意思,若有重复或其它疑问时,不会询问使用者,而强制复制;

-i 和f选项相反,在覆盖目标文件之前将给出提示要求用户确认。回答y时目标文件将被覆盖,是交互式拷贝。

-l 进行硬式连结 (hard link) 的连结档建立,而非复制档案本身;

-p 此时cp除复制源文件的内容外,还将把其修改时间和访问权限也复制到新文件中。 连同档案的属性一起复制过去,而非使用预设属性;

-r 递归持续复制,用于目录的复制行为。若给出的源文件是一目录文件,此时cp将递归复制该目录下所有的子目录和文件。此时目标文件必须为一个目录名。

-s 复制成为符号连结文件 (symbolic link),亦即『快捷方式』档案;

实例

cp a.txt testlinux/b.txt //如果b.txt是已存在文件,a.txt将源内容覆盖至目标文件中;如果b.txt不存在,则会复制创建b.txt并用a.txt覆盖
cp a.txt testlinux/ //如果testlinux为目录,则会复制a.txt到testlinux中(window拷贝文件一样)
cp -r /usr/men /usr/zh //将目录/usr/men下的所有文件及其子目录复制到目录/usr/zh中
cp -i /usr/men m*.c /usr/zh //将目录/usr/men中的以m打头的所有.c文件复制到目录/usr/zh中
cp -u ~/.bashrc /tmp/bashrc //若 ~/.bashrc 比 /tmp/bashrc 新才复制过来;这个 -u 的特性,是在目标档案与来源档案有差异时,才会复制的。
cp bashrc_slink bashrc_slink_2 //bashrc_slink 复制成为 bashrc_slink_2;如果没有加上任何参数时,复制的是源文件,而非连结文件的属性,若要复制连结文件的属性,就得要使用 -d 或者 -a 的参数了!

cp aaa/* /bbb //复制目录aaa下所有到/bbb目录下,这时如果/bbb目录下有和aaa同名的文件,需要按Y来确认并且会略过aaa目录下的子目录。
cp -r aaa/* /bbb //这次依然需要按Y来确认操作,但是没有忽略子目录。
cp -r -a aaa/* /bbb //依然需要按Y来确认操作,并且把aaa目录以及子目录和文件属性也传递到了/bbb。
cp -r -a aaa/* /bbb //成功,没有提示按Y、传递了目录属性、没有略过目录。

本文内容由互联网用户自发贡献,该文观点仅代表作者本人。如发现本站有涉嫌抄袭侵权/违法违规的内容,请发送邮件至 5733401@qq.com 举报,一经查实,本站将立刻删除。本文链接:https://fajihao.com/i/4752.html

(0)
星空的头像星空
上一篇 2022-04-19
下一篇 2022-04-19

相关推荐