【问题标题】:How to rename these files in bulk via shell and regular expressions?如何通过 shell 和正则表达式批量重命名这些文件?
【发布时间】:2020-10-18 13:25:20
【问题描述】:

我尝试修改很多名称为2020-06-28 16.19.50.md 的文件,删除空格和符号,只保留前12 位为202006281619.md

希望这可以通过正则表达式使用 shell 脚本来完成。在 macOS Finder 中选择这些文件,右键单击并运行服务脚本以完成更改。

【问题讨论】:

  • 试试这样的方法来删除空格、点和破折号s/[ .-]//g
  • @MarkSetchell 谢谢,那我怎么去掉最后两位数(本例去掉5和0,这里没有下划线)?
  • 试试substr($_,0,12)
  • 考虑使用-X 来保留扩展名。

标签: regex macos shell


【解决方案1】:

我不使用正则表达式。 但这可以删除当前目录文件名的空格。

for f in *; do mv "$f" "$(echo $f | sed 's/ //'g)" ; done

【讨论】:

    猜你喜欢
    • 2018-12-05
    • 1970-01-01
    • 1970-01-01
    • 2018-06-14
    • 2012-05-26
    • 2020-08-15
    • 2016-06-19
    • 2011-05-08
    • 2016-08-22
    相关资源
    最近更新 更多