我正在嘗試重命名大量錯誤命名的檔案,這些檔案在我的本地 git 存盤庫中進行跟蹤。這些檔案目前的格式為foo.txt_1.txt. 我想將它們更改為foo.txt.
到目前為止,這是我一直在嘗試的:
ls *_1.txt | xargs -I {} git mv -n {} newfilename
我只是不確定如果newfilename要進行我想要的替換,我應該使用什么。
uj5u.com熱心網友回復:
使用 for 回圈更容易。
for f in *_1.txt
do
echo git mv $f $(echo $f | sed 's/_1.txt//')
done
這將回顯它將運行的命令,以便您檢查它是否正確。從“git”命令之前洗掉“echo”以實際執行。
Bash 可以進行行內替換,例如
${VAR/_1.txt/}
但是在這種情況下沒有變數,所以你不能使用替換。
轉載請註明出處,本文鏈接:https://www.uj5u.com/ruanti/475836.html
下一篇:使用檔案的多行反轉grep匹配
