如果有一批文件下载后名称是这样的,
[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。