Linux RedHat 下批量修改文件名--使用的是awk

如果有一批文件下載後名稱是這樣的,

[www.abc.com] 電影第一集.rmvb

[www.abc.com] 電影第2集.rmvb

[www.abc.com] 電影第3集.rmvb

[www.abc.com] 電影第4集.rmvb

[www.abc.com] 電影第5集.rmvb

[www.abc.com] 電影第6集.rmvb

...


如果不想要[www.abc.com]出現在文件名稱裏面,用shell腳本來,怎麼去掉呢:

寫一個文件內容如下:

#!/bin/bash
find . -type f -name "*.rmvb" |
while read name; do
echo $name
newName=$(echo $name | awk -F'\\\[|]' '{print $3}')
echo  $newName
mv $name $newName
done


給這個文件賦予x權限, 放到下載文件的目錄執行:

 電影第一集.rmvb

 電影第2集.rmvb

 電影第3集.rmvb

 電影第4集.rmvb

 電影第5集.rmvb

 電影第6集.rmvb

...

以後再使用這個shell腳本,只需要更改分割符即可--->-F'\\\[|]' 這個使用【 】 做分割符的, 很特殊,如果是其他的分隔符,只需寫成如下格式:

'[ 1 | a | c ]'

linux批量更改文件名,使用的是awk。


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