我有一个有趣的问题,希望可以通过 shell 命令轻松解决。我有一个目录树,其中的目录名称是有意义的,每个目录里面都有几个文件,包括一个 .mp3 文件。
我想批量重命名所有 mp3 文件以匹配目录的名称。
例如,高级目录如下所示:
Seans-iMac% ls
2006.James Lovelock: Gaia’s Revenge
2006.Religion and stem cell research
2006.Stephen Schneider
2006.Tony Judt: Post-war Europe since 1945
2006.Water management
2007.'Here, Bullet'
2007.Alan Bennett
每个子目录的内容都差不多,例如:
Seans-iMac% cd "2006.Religion and stem cell research"
Seans-iMac% ls
details.txt lnl_20060605.mp3 synopsis.txt
我想把它改成这样:
Seans-iMac% ls
details.txt 2006.Religion and stem cell research.mp3 synopsis.txt
我尝试了一个for循环,但似乎无法正确设置参数。为了使它更复杂,目录名称有空格,有些有单引号。