【发布时间】:2021-04-06 17:01:29
【问题描述】:
我正在尝试查找括号中以年份开头的所有目录,例如:
[1990] Nature Documentary
然后重命名它们,去掉括号并在中间插入一个破折号。
1990 - Nature Documentary
下面的find 命令似乎找到了结果,但是我不能在模式前面加上^ 来标记目录名称的开始,否则它不会返回命中。
我很确定我需要使用-exec 或-execdir,但我不确定如何存储找到的模式并对其进行操作。
find . -type d -name '\[[[:digit:]][[:digit:]][[:digit:]][[:digit:]]] *'
【问题讨论】:
-
这是一个全局,而不是正则表达式。而且您不需要将其锚定到开头,因为如果匹配是部分匹配,
-nameprimary 不会评估为 true。