Shell
重命名字母數字文件
我在目錄中有以下文件:
GE.AARS_vs_Control16.txt GE.DHX30_vs_Control18.txt GE.DNAJC2_vs_Control18.txt
我想刪除
*_Control<numeric>
並替換它,*_Others
以便將文件重命名為GE.AARS_vs_Others.txt GE.DHX30_vs_Others.txt GE.DNAJC2_vs_Others.txt
for file in /dir/*.txt; do mv "$file" "${file%_*}_Others.txt" done
這
${file%_*}
是一種 shell 參數擴展的形式,它將刪除從最後一個開始的所有內容_
。
使用 Perl
rename
工具,假設您與要重命名的文件位於同一目錄中:rename 's/_Control1[68]/_Others/' GE.*_Control1[68].txt