shell腳本批量修改文件名方法
我們可以使用Shell腳本來實現這個功能。Shell腳本是一種用于自動化任務的編程語言,它可以在Unix/Linux操作系統上運行。在這個腳本中,我們將使用一個for循環來遍歷目標目錄下的所有文件,并使用mv命令將每個文件重命名為新的名稱。這里假設我們要將所有.txt文件的擴展名改為.bak。
注意:在運行此腳本之前,請確保你有足夠的權限來修改這些文件,并且你已經在正確的目錄下。此外,這個腳本會直接修改你的文件系統,所以在運行之前最好先備份你的數據。
代碼如下:
#!/bin/bash
# 這是一個批量修改文件名的shell腳本# 設置目標目錄,你可以根據需要修改這個路徑
TARGET_DIR="/path/to/your/directory"# 遍歷目標目錄下的所有.txt文件
for file in "$TARGET_DIR"/*.txt; do# 獲取不包含擴展名的文件名base_name=$(basename "$file" .txt)# 創建新的文件名new_name="${base_name}.bak"# 使用mv命令將文件重命名mv "$file" "$new_name"
done
注釋:
1. #!/bin/bash:這是一個shebang,它告訴系統這個腳本需要用bash shell來執行。
2. TARGET_DIR="/path/to/your/directory":這是你要修改文件的目標目錄,你需要將這里替換為你實際的目錄路徑。
3. for file in "$TARGET_DIR"/*.txt; do:這是一個for循環,它會遍歷目標目錄下的所有.txt文件。
4. base_name=$(basename "$file" .txt):這行代碼會獲取不包含擴展名的文件名。
5. new_name="${base_name}.bak":這行代碼會創建新的文件名,它將原文件名加上.bak后綴。
6. mv "$file" "$new_name":這行代碼會使用mv命令將原文件重命名為新的文件名。