批量重命名文件的技巧
尝试了半天,终于找到了几种批量重命名文件的方法,记录下来以备后用^_^
[quietheart@lv-k temp]$ touch {1,2,3,4,5}.cpp
[quietheart@lv-k temp]$ touch [1-5]
[quietheart@lv-k temp]$ ls
[1-5] 1.cpp 2.cpp 3.cpp 4.cpp 5.cpp
[quietheart@lv-k temp]$ rm \[1-5\]
rm:是否删除 一般空文件 “[1-5]”? y
[quietheart@lv-k temp]$ ls
1.cpp 2.cpp 3.cpp 4.cpp 5.cpp
[quietheart@lv-k temp]$ rename .cpp .c *.cpp
[quietheart@lv-k temp]$ ls
1.c 2.c 3.c 4.c 5.c
[quietheart@lv-k temp]$ ls *.c |awk '{sub(/.c$/,"")}{print $1}'|awk '{printf "mv %s.c %s.cpp\n",$1,$1}' |sh
[quietheart@lv-k temp]$ ls
1.cpp 2.cpp 3.cpp 4.cpp 5.cpp
[quietheart@lv-k temp]$ ls *.cpp |sed 's/\(.*\).cpp/mv & \1.c/' |sh
[quietheart@lv-k temp]$ ls
1.c 2.c 3.c 4.c 5.c
以上过程大致是:
先把所有".cpp"文件的后缀修改成".c"后缀,再把".c"修改回".cpp",再把".cpp"修改成".c"。
原理分别用到了:使用rename、使用awk+sh、使用sed+正则+sh,三种方式。
阅读(1414) | 评论(0) | 转发(0) |