当前位置: 技术问答>linux和unix
SHELL脚本修改文件名移动到指定文件夹
来源: 互联网 发布时间:2016-06-09
本文导语: 现在我TEST文件夹下有 ralph-config.xml.bb ralph-log.cfg.bb ralph-info.xml.bb bessie-config.xml.bb bessie-log.cfg.bb bessie-info.xml.bb 现在想写一个SHELL脚本把ralph-config.xml.bb、ralph-log.cfg.bb、ralph-info.xml.bb移动到home/test/ralph文件夹下,并且把前...
现在我TEST文件夹下有
ralph-config.xml.bb
ralph-log.cfg.bb
ralph-info.xml.bb
bessie-config.xml.bb
bessie-log.cfg.bb
bessie-info.xml.bb
现在想写一个SHELL脚本把ralph-config.xml.bb、ralph-log.cfg.bb、ralph-info.xml.bb移动到home/test/ralph文件夹下,并且把前缀ralph-去掉。
bessie-config.xml.bb、bessie-log.cfg.bb、bessie-info.xml.bb移动到
home/test/bessie文件夹下,并且把前缀bessie-去掉。
哪位高手能帮帮解决下,谢谢了
ralph-config.xml.bb
ralph-log.cfg.bb
ralph-info.xml.bb
bessie-config.xml.bb
bessie-log.cfg.bb
bessie-info.xml.bb
现在想写一个SHELL脚本把ralph-config.xml.bb、ralph-log.cfg.bb、ralph-info.xml.bb移动到home/test/ralph文件夹下,并且把前缀ralph-去掉。
bessie-config.xml.bb、bessie-log.cfg.bb、bessie-info.xml.bb移动到
home/test/bessie文件夹下,并且把前缀bessie-去掉。
哪位高手能帮帮解决下,谢谢了
|
将第一行更改为:
ls . | awk -F ' .*' '{print $1}' | grep -|sed -e 's/(bessie.*-)(.*)/mv 12 /home/test/bessie/2/g' -e 's/(ralph.*-)(.*)/mv 12 /home/test/ralph/2/g' | sed -e 's/.bb$//g'
即在最后加上 | sed -e 's/.bb$//g' 将最后一个.bb去掉即可
ls . | awk -F ' .*' '{print $1}' | grep -|sed -e 's/(bessie.*-)(.*)/mv 12 /home/test/bessie/2/g' -e 's/(ralph.*-)(.*)/mv 12 /home/test/ralph/2/g' | sed -e 's/.bb$//g'
即在最后加上 | sed -e 's/.bb$//g' 将最后一个.bb去掉即可