批量更改文件名及變量的子串

方法一:

rename 

rename from to file...

rename 要更改的名稱 更改爲的名稱 要更改的文件

例如:將當前目錄裏以 .SH結尾的文件 ->以.sh結尾

image.png


方法二:將當前目錄裏以 .sh結尾的文件 ->以.sh-bak結尾

image.png


方法三:將當前目錄裏以 .sh-bak結尾的文件 ->以.sh結尾(用腳本實現)

基礎知識鋪墊 變量子串

${#string}返回$string的長度
${string:position}在$string中,從位置$position之後開始提取子串
${string:position:length}在$string中,從位置$position之後開始提取長度爲$length的子串
${string#substring}從變量$string開頭開始刪除匹配$substring子串
${string%substring}從變量$string結尾開始刪除匹配$substring子串
${string/substring/replace}使用$replace,來代替匹配到的$substring
${string/#substring/replace}
${string/%substring/replace}

image.png

#!/bin/bash
#

for i in `ls` ; do
  mv $i `echo ${i%-bak}`
done

image.png

image.png

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章