如何将 多个目录下的文件 批量修改文件名 比如 abc目录下的test1.txt,text2.txt ... 修改为 abc_test.txt abc_test2.txt ... def目录下的test1.txt,text2.txt ... 修改为 def_test.txt def_test2.txt ... ......
最佳答案
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
|
#!/usr/bin/env bash src_dir= /srv/http/sh/exp1/ dir =` ls -1 $src_dir` for dir_name in ` ls -1 $src_dir`; do if [ -d $src_dir$dir_name ] then #echo $src_dir$dir_name for file_name in ` ls -l $src_dir$dir_name | grep ^- | awk '{print $9}' `; do mv $src_dir$dir_name "/" $file_name $src_dir$dir_name "/" $dir_name "_" $file_name done fi done |