Linux命令篇之cp
关于 –
今天有个同事问我,shall编程里的 cp -rf --
中的--
的作用是什么,不知道啊,略尴尬,就查查学习学习
--
主要是为了解决cp
特殊字符文件名的情况,例如 文件名是-aaa.txt
,进行cp
时,cp -aaa.txt
会报错。shell 把破折号(-)之后的内容认作参数了,而很明显没有这样的参数,所以报错 这时候使用 cp -- -aaa.txt
即可
- 针对
-
开头的文件需要使用--
来告知bash,不要将这里的-
解释为参数 - 针对其它特殊字符,使用
'
单引号把文件名括起来 - 针对文件名还包含
'
或者"
的情况,就需要交替使用规则
命令格式
1 | cp [options] source dest |
或者
1 | cp [options] source... directory |
选项:
- -a:此选项通常在复制目录时使用,它保留链接、文件属性,并复制目录下的所有内容。其作用等于dpR参数组合
- -d:复制时保留链接。这里所说的链接相当于Windows系统中的快捷方式。
- -f:覆盖已经存在的目标文件而不给出提示。
- -i:与-f选项相反,在覆盖目标文件之前给出提示,要求用户确认是否覆盖,回答”y”时目标文件将被覆盖。
- -p:除复制文件的内容外,还把修改时间和访问权限也复制到新文件中。
- -r:若给出的源文件是一个目录文件,此时将复制该目录下所有的子目录和文件。
- -l:不复制文件,只是生成链接文件
实例
使用指令”cp”将当前目录”test/“下的所有文件复制到新目录”newtest”下,输入如下命令:
1 | cp –r test/ newtest |
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 观道君的小站!
评论