shell复制除了某个文件的操作
将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的结果 由{}来代替