gpt4 book ai didi

regex - 基于正则表达式递归重命名目录和文件

转载 作者:太空宇宙 更新时间:2023-11-04 11:25:24 26 4
gpt4 key购买 nike

我想去掉所有的“?”在给定目录中的文件名中,他们有更多的子目录,并且其中有子目录。我试过使用一个简单的 perl regex 脚本进行系统调用,但它无法在每个子目录上递归,并且手动进行会浪费太多时间。我该如何解决我的问题?

最佳答案

您可以使用查找 命令搜索带有“?”的文件名。然后使用它的 exec 参数运行一个删除“?”的脚本。文件名中的字符。考虑这个脚本,您可以将其保存到 /usr/local/bin/rename.sh,例如(记得给它 +x 权限):

#!/bin/sh
mv "$1" "$(echo $1| tr -d '?')"

然后这将完成工作:

find -name "*\?*" -exec rename.sh {} \;

关于regex - 基于正则表达式递归重命名目录和文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15123587/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com