不能不懂脚本 技术笔试面试

写个shell脚本对文件进行批量改名

最近需要干这么件事,把当前文件夹下文件名含有eee的都改成大写的EEE,比如21-eee.doc就要改成21-EEE.doc。

写了个shell脚本,会sed就不难了:

for filename in *eee*; do newname=`echo $filename|sed -n ‘s/eee/EEE/p’`; mv $filename $newname;done

如果写成结构化会更清晰:

for filename in *eee*

do

newname=`echo $filename|sed -n ‘s/eee/EEE/p’`

mv $filename $newname

done

然后还有一个任务,将每个文件的执行权限去掉,这样写:

for filename in *; do chmod ugo-x $filename;done

结论:

shell是个好东西,sed还是很有用的,不能小看正则表达式。

over~

8条评论

发表您的评论

请您放心,您的信息会被严格保密。必填项已标识 *