使用終端機重命名某些編號的文件

使用終端機重命名某些編號的文件

我有一系列編號為 1-20 的文件,終端機對它們進行如下排序:

episode1.txt
episode10.txt
episode11.txt
episode12.txt

我想透過在數字前面插入 0 來重命名檔案 1-9。我的程式碼如下:

for file in episode{1-9}.txt
do
   rename -vs "episode"* "episode0"*
done

我也嘗試過“mv”命令,但它不起作用。有沒有人有什麼建議?先致謝

答案1

若要列舉序列,請使用{x..y}代替{x-y}

由於所有文件的名稱都非常相似,因此我們可以使用參數擴展來截斷前綴,episode同時將其替換為episode0.

完整的命令如下:

for file in episode{1..9}.txt
do
    mv "$file" "episode0${file#episode}"
done

${file#episode}是一個參數擴展,在本例中,它會擴展參數,file同時刪除與 相符的最短前綴模式episode

相關內容