I.e*_*yed 2 linux bash shell rename
我想要一个可以在linux上运行的脚本来重命名这个表单中的文件,即Yahoo Babel Fish - Persistent Cross Site Scripting Vulnerability.jpg到Yahoo-Babel-Fish-Persistent-Cross-Site-Scripting-Vulnerability.jpg
它只删除每个空格并用连字符改变它,如果它是两个空格之间的连字符,它只删除空格,就像你在这部分中看到的那样"Fish - Persistent"到"Fish-Persistent"
如果您想要处理当前目录中的每个文件,可以用两行来完成:
for f in *; do mv "$f" "$(echo $f | sed 's/ /-/g')"; done
for f in *; do mv "$f" "$(echo $f | sed 's/---/-/g')"; done
Run Code Online (Sandbox Code Playgroud)
可能有一种方法可以在一行中完成,但我现在想不到它.