我有一個文件目錄,其中一些以下劃線結尾。Bash重命名字符串中的最後一個下劃線
我想測試每個文件,看它是否以下劃線結尾,然後去掉下劃線。
我目前運行下面的代碼:
for file in *;do
echo $file;
if [[ "${file:$length:1}" == "_" ]];then
mv $file $(echo $file | sed "s/.$//g");
fi
done
但它似乎並沒有被重命名使用下劃線的文件。例如,如果我有一個名爲all_indoors_
的文件,我期望它能給我all_indoors
。
你只是想刪除下劃線,沒有別的?另外,'$ length'在哪裏定義? – fedorqui
你的意思是帶* off?刪除下劃線,或下劃線和其餘文本? –
@fedorqui不知道,認爲我犯了一個錯誤:-) – andlrc