【发布时间】:2018-07-18 20:29:28
【问题描述】:
什么是重命名目录和子目录中所有文件(递归)的shell命令?
我想在所有目录和子目录中从filename.scss到_filename.scss的所有以*scss结尾的文件添加下划线。
我找到了与此相关的答案,但大多数(如果不是全部)都要求您知道文件名本身,我不希望这样做,因为文件名不同并且需要记住很多,甚至手动键入它们,其中一些深深嵌套在目录中。
【问题讨论】:
-
尝试循环查找
-
Find 在查找文件时效果很好,但在我想重命名找到的文件时不起作用(文件名未发出)
-
我已经尝试过这个
find ./src/components -iname "*.scss"并且这会获取文件,但是我将如何获取每个文件名并为其附加下划线?像find ./src/components -iname "*.scss" | mv each-file-name to _each-file-name这样的东西?另外,find,找到所有东西,所以不确定在循环中这是否会有所作为。