批量更改檔名及變數的子串
阿新 • • 發佈:2018-12-14
方法一:
rename
rename from to file...
rename 要更改的名稱 更改為的名稱 要更改的檔案
例如:將當前目錄裡以 .SH結尾的檔案 ->以.sh結尾
方法二:將當前目錄裡以 .sh結尾的檔案 ->以.sh-bak結尾
方法三:將當前目錄裡以 .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} |
#!/bin/bash # for i in `ls` ; do mv $i `echo ${i%-bak}` done