gpt4 book ai didi

正则表达式以递归方式重命名所有文件,删除字符 "?"命令行后的所有内容

转载 作者:IT王子 更新时间:2023-10-29 01:01:38 25 4
gpt4 key购买 nike

我有一系列文件,我想使用 *nix 系统上可用的命令行工具进行清理。现有文件的命名方式如下。

filecopy2.txt?filename=3
filecopy4.txt?filename=33
filecopy6.txt?filename=198
filecopy8.txt?filename=188
filecopy3.txt?filename=19
filecopy5.txt?filename=1
filecopy7.txt?filename=5555

我希望将它们重命名为删除“?”之后的所有字符,包括“?”。

filecopy2.txt
filecopy4.txt
filecopy6.txt
filecopy8.txt
filecopy3.txt
filecopy5.txt
filecopy7.txt

我相信下面的正则表达式会捕获我想从名字中删除的部分,

\?(.*)

我就是想不出除此之外如何完成这项任务。

最佳答案

一个 bash 命令:

for file in *; do
mv $file ${file%%\?filename=*}
done

关于正则表达式以递归方式重命名所有文件,删除字符 "?"命令行后的所有内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16992816/

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