【问题标题】:find files with ? in filename and rename these查找文件?在文件名中并重命名这些
【发布时间】:2016-04-12 09:34:10
【问题描述】:

在 wget 一个 Wordpress 之后,我的文件带有“?”在文件名中。

如何重命名这些文件并删除文件名的结尾?

find -type f -name '*.js*' | xargs
./PATH/TO/xxx.js?ver=1.0.0

find -type f -name '*.js*' | xargs rename "s/\?.*$//g"

不工作!

find -type f -name '*.js*' | xargs rename -n "s/xxx/123/g"

没有输出!

部分源码:

...
        <script src="http://www.example.com/wp-content/themes/example/js/example.js?ver=1.0.0" type="text/javascript"></script>
    </body>
</html>

【问题讨论】:

  • 你能告诉我们wget之后收到的文件是什么样子的吗?

标签: find rename xargs


【解决方案1】:

我找到了一个简单的解决方案:

find | rename 's/\?ver=1\.0\.0$//g'

更一般的方式:

find | rename 's/\?ver=\d\.\d\.\d$//g'

不要忘记测试!

find | rename -n ...

保持简单,愚蠢。 :-)

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-05-04
    • 1970-01-01
    • 1970-01-01
    • 2022-01-07
    • 1970-01-01
    相关资源
    最近更新 更多