免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
查看: 27259 | 回复: 9
打印 上一主题 下一主题

cp什么参数可以不覆盖已有文件呀 [复制链接]

论坛徽章:
0
跳转到指定楼层
1 [收藏(0)] [报告]
发表于 2007-06-23 14:31 |只看该作者 |倒序浏览
有1000个同名文件,但我不想覆盖 只跳过

CP命令有选项吗?

目录对目录cp的。。

论坛徽章:
1
荣誉版主
日期:2011-11-23 16:44:17
2 [报告]
发表于 2007-06-23 14:43 |只看该作者
預設就會覆蓋,但你可用 -i 選項,在覆蓋前跟你確認。

论坛徽章:
0
3 [报告]
发表于 2007-06-23 14:57 |只看该作者
这样?
  1. awk 'BEGIN { cmd="cp -i a a1"; print "y" |cmd; }'
复制代码

论坛徽章:
1
荣誉版主
日期:2011-11-23 16:44:17
4 [报告]
发表于 2007-06-23 15:00 |只看该作者
應該是 print "n" 吧?

要不,就要寫 loop,判斷 destination 是否同名,然則 continue ,否則 cp 。

论坛徽章:
0
5 [报告]
发表于 2007-06-23 15:05 |只看该作者
对,写错了 >_<

论坛徽章:
0
6 [报告]
发表于 2007-06-23 19:33 |只看该作者

  1. awk 'BEGIN { cmd="cp -i a a1"; print "n" |cmd; }'
复制代码


应该怎么用?

麻烦拉

论坛徽章:
0
7 [报告]
发表于 2007-06-23 20:03 |只看该作者
a 是源文件,a1 是目标文件。如果存在 a1,会自动忽略。相当于
cp -i a a1
在提示是否覆盖的时候,自动输入 n

论坛徽章:
0
8 [报告]
发表于 2007-06-23 20:06 |只看该作者
[ -e "$file" ] || cp "$file" "$dest"

论坛徽章:
4
技术图书徽章
日期:2013-09-23 10:22:37狮子座
日期:2013-10-15 23:31:54卯兔
日期:2013-11-11 17:33:15金牛座
日期:2013-11-15 17:25:28
9 [报告]
发表于 2007-06-23 20:10 |只看该作者
cp --reply=no

论坛徽章:
0
10 [报告]
发表于 2007-06-23 23:08 |只看该作者
原帖由 260009610 于 2007-6-23 14:31 发表
有1000个同名文件,但我不想覆盖 只跳过

CP命令有选项吗?

目录对目录cp的。。



哈 刚没看题
预设有 -i 选项。/bin/cp 才需要加 -i
[root@seker 3006854]# which cp
alias cp='cp -i'
        /bin/cp
[root@seker 3006854]#

[root@seker 3006854]#for i in `find .` ;do  echo "n"| cp -R "$i" ../3006854.bak/ &>/dev/null ;done


man cp 原来有了/

       --reply={yes,no,query}
              specify  how  to handle the prompt about an existing destination
              file

[ 本帖最后由 Seker 于 2007-6-23 23:28 编辑 ]
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP