gpt4 book ai didi

bash - 如何通过正则表达式重命名批量文件?

转载 作者:行者123 更新时间:2023-11-29 09:39:29 24 4
gpt4 key购买 nike

我有一堆文件从 wget 操作中吐出。许多具有这样的文件名:

bootstrap.min.css?v=30cad4497c.css
font-awesome.min.css?v=30cad4497c.css
screen.css?v=30cad4497c.css

是的,这些是文件名、问号和等号等等。

我知道 ?v=30cad4497.css 东西出现的原因。如何重命名所有文件以删除“?”之后的所有内容性格?

我很乐意为此编写几行 shell 脚本,但我不想破坏 python/node/ruby/whatever。

最佳答案

在 bash 中:

for file in *[?]* ; do mv $file ${file%%[?]*} ; done

*[?]* 表示匹配文件名中包含问号的文件。 ${file%%glob} 表示在字符串的末尾 剥离所有与 glob 匹配的文本。 ${file##glob} 表示在字符串的开头去掉所有与 glob 匹配的文本。请注意,这些是文件 glob,而不是正则表达式。文件 glob 是我们在 bash 中经常用来匹配文件的东西。

关于bash - 如何通过正则表达式重命名批量文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40668147/

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