码迷,mamicode.com
首页 > 移动开发 > 详细

linux命令:批量将查找到的文件移动或者复制到其他目录并尽可能保持原文件的目录结构

时间:2017-10-10 14:38:38      阅读:226      评论:0      收藏:0      [点我收藏+]

标签:alt   user   绝对路径   替换   sys   min   路径   目录   条件   

以例子说明
原文件:
技术分享
移动目标:
技术分享
步骤:
1.查找出满足条件的文件,并先创建目标目录
find  /root/ -maxdepth 5  -name ‘*.log‘ -exec echo {} \;|sed "s/\/root\//\/root\/mv2\//g"|sed "s/[^/]*\.log//"|awk ‘{system("mkdir -p "$1" ")}‘
 
2.查找出满足条件的文件,并移动文件至目标目录
find  /root/ -maxdepth 5  -name ‘*.log‘ -exec echo {} {} \; |sed "s/ \/root\// \/root\/mv2\//g"|awk ‘{system("mv "$1" "$2)}‘
 
命令说明:功能将root目录下面的所有.log文件移动到mv2子目录中。
a.查找时一定要用绝对路径,否则mv和mkdir命令会出错
b.第2步中:sed替换符里有空格的

linux命令:批量将查找到的文件移动或者复制到其他目录并尽可能保持原文件的目录结构

标签:alt   user   绝对路径   替换   sys   min   路径   目录   条件   

原文地址:http://www.cnblogs.com/FoChen/p/7645187.html

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