我有超过 400 个文件夹想要批量重命名。所有文件夹名称均以“-”加上“-”后面的一串字符结尾。我想删除文件夹名称末尾的“-”和“-”之后的所有字符。
例子:
~/Dubdilla Location Fix-4672010158-2463235/
到~/Dubdilla Location Fix/
我尝试过使用rename -a 's/[-].*//' *[-]*
,虽然没有返回错误,但似乎命令“有效”,但我的文件夹名称没有更改。
答案1
和zsh
:
autoload -Uz zmv
(您可能想将其添加到您的~/.zshrc
),然后:
zmv -n '*-*(#q/)' '${f%%-*}'
或者递归地:
zmv -n '(**/)(*-*)(#q/)' '$1${2%%-*}'
如果满意,请删除-n
(试运行)。
请注意,它不会触及隐藏目录(您可以D
q
为此添加限定符)。