linux 批量复制或者批量修改含有某个字符串的文件名

写一个脚本文件,code如下:

for file_old in `ls | grep my`
do
        file_new=`echo "$file_old"|sed 's/my/you/g'`
        cp $file_old $file_new
done


解释一下代码:

for file_old in `ls | grep my`       (首先file_old读取本目录下所有文件名中含有my的文件   `ls | grep my`
,列出所有含有my的文件)

file_new=`echo "$file_old"|sed 's/my/you/g'`        (新文件名file_new将所有my的地方换成you)

cp $file_old $file_new       (复制在本目录下产生新的文件,当然也可以复制到其他目录,同理cp命令也可以换成mv命令,这样就可以批量重命名)
 

你可能感兴趣的:(linux 批量复制或者批量修改含有某个字符串的文件名)