如果我有50個不同的文件要重命名(或任何東西,基本上兩個參數)。我將如何使用for循環或任何其他方法來做到這一點?循環;傳遞兩個參數 - 1:1映射
mv $1 $2
我不想傳遞每個實例的參數。 $1 = ab
和$2 = 1
。 50個不同的文件名。
如果我有50個不同的文件要重命名(或任何東西,基本上兩個參數)。我將如何使用for循環或任何其他方法來做到這一點?循環;傳遞兩個參數 - 1:1映射
mv $1 $2
我不想傳遞每個實例的參數。 $1 = ab
和$2 = 1
。 50個不同的文件名。
說當你有在當前目錄下的txt文件的列表要重命名:
for f in *.txt; do mv "$f" "renamed_$f"; done
我建議在添加echo
之後,看看命令是如何實現的首先執行,然後刪除回顯,如果它看起來不錯。
對於常見的文件重命名任務,您可能還需要考慮使用mmv
,它允許您更輕鬆地進行基於模式的文件重命名。
是的,如果名稱包含空格或由shell解釋的任何有趣的字符,建議添加引號。謝謝,湯姆。 – EdvardM
我想我有使用數組
OLD=(file text filename textfile)
NEW=(files1 text3 filename2 textfile3)
for i in {0..3}; do mv ${OLD[$i]} ${NEW[$i]};done
你在哪兒使用oldName,NEWNAME每個文件的答案嗎?在一個文件? – Zac
我以重命名爲例。我想知道如何完成1:1映射 – san1512
我得到了答案 – san1512