1.批量建立文件
touch tmp_{1..10}.txt
注意大括号内是两个点,不是三个点!
结果:一次性建立如下共10个文件
tmp_1.txt tmp_5.txt tmp_9.txt
2.查找当前目录下包含某一字符的文件
find ./ -name "*_*"
结果:
所有带_的文件就显示了
/ucsc_cds
./tmp_9.txt
./tmp_3.txt
./ucsc_cds.gz
./tmp_2.txt
./tmp_1.txt
./tmp_6.txt
./tmp_8.txt
./tmp_{1-10}.txt
./tmp_4.txt
./tmp_7.txt
3.文件批量改名
find ./ -name "*_*" |while read id; do echo ${id/_/-/}; done
执行结果:
./tmp-/{1…10}.txt
./tmp-/10.txt
./tmp-/5.txt
./ucsc-/cds
./tmp-/9.txt
./tmp-/3.txt
./ucsc-/cds.gz
./tmp-/2.txt
./tmp-/1.txt
./tmp-/6.txt
./tmp-/8.txt
./tmp-/{1-10}.txt
./tmp-/4.txt
./tmp-/7.txt
./.git/COMMIT-/EDITMSG
./.git/FETCH-/HEAD
do mv 可以替代 do echo