Linux系统利用cp命令实现强制覆盖功能的方法
脚本之家 / 编程助手:解决程序员“几乎”所有问题!
脚本之家官方知识库 → 点击立即使用
前言
cp命令用来将一个或多个源文件或者目录复制到指定的目的文件或目录。它可以将单个源文件复制成一个指定文件名的具体的文件或一个已经存在的目录下。cp命令还支持同时复制多个文件,当一次复制多个文件时,目标文件参数必须是一个已经存在的目录,否则将出现错误。
语法
cp(选项)(参数)
选项
- -a:此参数的效果和同时指定"-dpR"参数相同;
- -d:当复制符号连接时,把目标文件或目录也建立为符号连接,并指向与源文件或目录连接的原始文件或目录;
- -f:强行复制文件或目录,不论目标文件或目录是否已存在;
- -i:覆盖既有文件之前先询问用户;
- -l:对源文件建立硬连接,而非复制文件;
- -p:保留源文件或目录的属性;
- -R/r:递归处理,将指定目录下的所有文件与子目录一并处理;
- -s:对源文件建立符号连接,而非复制文件;
- -u:使用这项参数后只会在源文件的更改时间较目标文件更新时或是名称相互对应的目标文件并不存在时,才复制文件;
- -S:在备份文件时,用指定的后缀“SUFFIX”代替文件的默认后缀;
- -b:覆盖已存在的文件目标前将目标文件备份;
- -v:详细显示命令执行的操作。
参数
源文件:制定源文件列表。默认情况下,cp命令不能复制目录,如果要复制目录,则必须使用-R选项;
目标文件:指定目标文件。当“源文件”为多个文件时,要求“目标文件”为指定的目录。
利用cp命令实现强制覆盖功能
我们平常在Linux中使用 cp 命令时,会发现将一个目录中文件复制到另一个目录具有相同文件名称时,即使添加了 -rf 参数强制覆盖复制时,系统仍然会提示让你一个个的手工输入 y 确认复制,所添加的rf参数是不起作用的。
原因:
cp命令被系统设置了别名,相当于cp=‘cp -i'
。
查询alias命令
1 2 3 4 5 6 7 8 9 10 11 | [root@localhost sonarqube] # alias alias cp = 'cp -i' alias egrep = 'egrep --color=auto' alias fgrep = 'fgrep --color=auto' alias grep = 'grep --color=auto' alias l.= 'ls -d .* --color=auto' alias ll= 'ls -l --color=auto' alias ls = 'ls --color=auto' alias mv = 'mv -i' alias rm = 'rm -i' alias which = 'alias | /usr/bin/which --tty-only --read-alias --show-dot --show-tilde' |
通过上述输出,可以看出,我们平时使用 cp 命令,虽然没有添加任何参数 ,但系统默认会在我们使用 cp 命令时自动添加 -i 参数
-i 即交互的缩写方式,也就是在使用 cp 命令作文件覆盖操作之前,系统会要求确认提示.这个本来是系统的一个保险措施.如果有很多文件要复制,觉得一个一个输入y 确认麻烦的话,可以使用如下方法解决:
强制复制
建议大家使用方式一,因为取消别名的话很容易造成风险,万一又忘记恢复别名,以后的复制都不会有提示信息。
有提示信息可以多一层保险嘛,是人都会有犯混的时候,给自己加一个保险,有保障呀.
方式一
使用原生的cp命令
方式二
取消cp命令别名
去掉 cp 命令的别名,这时你再用 cp -rf 复制文件时,就不会要求确认啦.
复制完成后恢复别名
总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,如果有疑问大家可以留言交流,谢谢大家对脚本之家的支持。
- Linux中date命令转换日期提示date: illegal time format问题解决
- linux 操作 ftp 常用命令
- linux下svn版本控制的常用命令大全
- Linux磁盘格式化命令详解
- Linux定时执行任务at和crontab命令详解
- Linux中Git集中操作命令汇总
- Linux通过sar命令查看网卡流量
- expect命令在linux下实现批量ssh免密
- 简述Linux文本处理命令“sed”
- java程序员必须要学会的linux命令总结(推荐)
- Linux中利用grep命令如何检索文件内容详解
- 详解Linux中两个查找命令locate和find教程
- linux中ipset命令的使用方法详解
- Linux十个新手命令分享
- Linux帮助和用户管理命令
- Linux企业运维人员常用的150个命令分享
- Linux中英文命令对应
微信公众号搜索 “ 脚本之家 ” ,选择关注
程序猿的那些事、送书等活动等着你
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若内容造成侵权/违法违规/事实不符,请将相关资料发送至 reterry123@163.com 进行投诉反馈,一经查实,立即处理!
相关文章
Linux、CentOS下安装zip与unzip指令功能(服务器)
这篇文章主要介绍了Linux、CentOS下安装zip与unzip指令的操作方法,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友参考下吧2019-11-11
最新评论