码迷,mamicode.com
首页 > 系统相关 > 详细

shell复制除了某个文件的操作

时间:2018-01-03 22:31:46      阅读:270      评论:0      收藏:0      [点我收藏+]

标签:传递   变量   文件的操作   gre   span   class   size   目录   -name   

 将app的已经写成带有日期名的日志放到归档特定目录(刨除正在记录的日志)

find $APPHOME/logs | grep -v "info.log\|debug.log\|error.log" | xargs -i  tar -cvzf -C /opt/logs/$DATE.tar.gz {}

 

日期:DATE=`date +%Y%m%d%H%M%S`

find . -name "*" |xargs cp ????

这里 xargs cp 怎么区分cp源 和 cp目的
例如:想把 查询到的文件 都copy到/home/users/中去
find . -name "*" | xargs cp /home/users/
cp命令在这里就变成:cp /home/users/ Find_file

默认从管道传来的值是放在最后的 这样的话原本想做cp源文件的值和目的目录的参数就颠倒了
xargs 有像-exec 那种 {} 的变量

-i 表示 find 传递给xargs的结果 由{}来代替 

shell复制除了某个文件的操作

标签:传递   变量   文件的操作   gre   span   class   size   目录   -name   

原文地址:https://www.cnblogs.com/guanghe/p/8185566.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!