Ais*_*rni 3 shell filenames rename
我在目录中有以下文件:
GE.AARS_vs_Control16.txt
GE.DHX30_vs_Control18.txt
GE.DNAJC2_vs_Control18.txt
Run Code Online (Sandbox Code Playgroud)
我想删除*_Control<numeric>并将其替换为*_Others这样的文件将被重命名为
GE.AARS_vs_Others.txt
GE.DHX30_vs_Others.txt
GE.DNAJC2_vs_Others.txt
Run Code Online (Sandbox Code Playgroud)
for file in /dir/*.txt; do
mv "$file" "${file%_*}_Others.txt"
done
Run Code Online (Sandbox Code Playgroud)
这${file%_*}是 shell 参数扩展的一种形式,它将删除最后一个_和以后的所有内容。