我试图从某个目录中的所有文件中删除特定单词列表,并将其替换为空白。从文件名中删除单词列表
所以:
这真棒内容的720p BLAH FOO BANG OOO - 30.9.2013.mp4
变为:
这真棒内容 - 30.9.2013.mp4
现在下面的工程对单翅d并替换一个词。
find path/to/folder/ -maxdepth 3 -name '*.*' -execdir bash -c 'mv -i "$1" "${1//foo/}"' bash {} \;
我也尝试了多次发现,但这似乎是一个很长的做法,我似乎遇到这样的问题。
几个问题,我有:
- 希望它是不区分大小写
- 极品“$ {1个//富/}”来指代一个列表,如果大于
- 删除空格1
试图在cronjob上将其作为bash脚本运行。
除非有更好的方法来删除“This Awesome Content” - “30.9.2013.mp4”之间的所有内容。
非常感谢。
似乎我是一个完整的newb。我将如何实现这个到我的find命令中,替换mv命令?另外如果我把我加到-e's/FOO // g',例如-e'/ FOO // Ig'会忽略大小写敏感性。 – Keelan
要使sed不区分大小写,请在末尾添加gI。我更新了我的帖子。 – philshem
我已经添加了更完整的解决方案。请让我知道它是如何为你工作的。 – philshem