批量创建文件及替换文件名

批量创建文件

写入需要创建的文件名
    file.txt 内容如下:test1.big.jpg
                     test2.big.jpg
                     test1.big.jpg

创建文件
    touch `cat file.txt | tr "\n" " "`

批量修改文件名(sed)

单一文件做测试
    f=test1.big.jpg
    echo $f | sed 's#.big##g'

获取目标文件
    ls | grep 'big.jpg'

遍历输出目标文件
    for i in `ls | grep 'big.jpg'`;do echo $i;done;

替换全部文件
    for i in `ls | grep 'big.jpg'`;do mv $i `echo $i | sed 's#.big##g'`;done;

批量修改文件名(awk)

单一文件做测试
    f=test1.big.jpg
    echo $f | awk -F .big '{print $1$2}'
获取目标文件
    ls | grep 'big.jpg'

遍历输出目标文件
    for i in `ls | grep 'big.jpg'`;do echo $i;done;

替换全部文件
    for i in `ls | grep big.jpg`; do mv $i `echo $i | awk -F .big '{print $1$2}'`;done;

批量修改文件名(awk)

获取mv的源文件和目标文件
    ls | grep .big | awk -F ".big" '{print $0 " " $1$2}'
拼接mv src dst
    ls | grep .big | awk -F ".big" '{print "mv "  $0 " " $1$2}'
作为命令执行
    ls | grep .big | awk -F ".big" '{print "mv "  $0 " " $1$2}' | bash

批量修改文件名(rename)

rename .big " " *.big.jpg
坚持原创技术分享,您的支持将鼓励我继续创作!