AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / ubuntu / 问题 / 859363
Accepted
devilz
devilz
Asked: 2016-12-12 00:36:16 +0800 CST2016-12-12 00:36:16 +0800 CST 2016-12-12 00:36:16 +0800 CST

使用重命名时如何排除具有特定数字的文件名

  • 772
$ dir  
Magi The Labyrinth Of Magic Episode 1 English Dubbed.mp4  
Magi The Labyrinth Of Magic Episode 2 English Dubbed.mp4  
Magi The Labyrinth Of Magic Episode 3 English Dubbed.mp4  
Magi The Labyrinth Of Magic Episode 4 English Dubbed.mp4  
Magi The Labyrinth Of Magic Episode 5 English Dubbed.mp4  
Magi The Labyrinth Of Magic Episode 6 English Dubbed.mp4  
Magi The Labyrinth Of Magic Episode 6 English Dubbed.mp4-1.part 

$ rename -n 's/Magi\ The\ Labyrinth\ Of\ Magic\ Episode\ {1..5}.+mp4/MTLOM\ \(DUB\)\ 0*{1..5}.mp4/g' *

Unescaped left brace in regex is deprecated, passed through in regex; marked by <-- HERE in m/Magi\ The\ Labyrinth\ Of\ Magic\ Episode\ { <-- HERE 1..5}+mp4/ at (eval 1) line 1.
Unescaped left brace in regex is deprecated, passed through in regex; marked by <-- HERE in m/Magi\ The\ Labyrinth\ Of\ Magic\ Episode\ { <-- HERE 1..5}+mp4/ at (eval 2) line 1.
Unescaped left brace in regex is deprecated, passed through in regex; marked by <-- HERE in m/Magi\ The\ Labyrinth\ Of\ Magic\ Episode\ { <-- HERE 1..5}+mp4/ at (eval 3) line 1.
Unescaped left brace in regex is deprecated, passed through in regex; marked by <-- HERE in m/Magi\ The\ Labyrinth\ Of\ Magic\ Episode\ { <-- HERE 1..5}+mp4/ at (eval 4) line 1.
Unescaped left brace in regex is deprecated, passed through in regex; marked by <-- HERE in m/Magi\ The\ Labyrinth\ Of\ Magic\ Episode\ { <-- HERE 1..5}+mp4/ at (eval 5) line 1.
Unescaped left brace in regex is deprecated, passed through in regex; marked by <-- HERE in m/Magi\ The\ Labyrinth\ Of\ Magic\ Episode\ { <-- HERE 1..5}+mp4/ at (eval 6) line 1.

我想重命名一些文件而不是其他文件;在 30 个文件中,要忽略的文件是第六个 6、16、8、28 和 19。

command-line
  • 1 1 个回答
  • 140 Views

1 个回答

  • Voted
  1. Best Answer
    Zanna
    2016-12-12T00:49:33+08:002016-12-12T00:49:33+08:00

    如果总共有 30 个文件,要重命名文件 6、8、16、19 和 28 以外的所有文件:

    $ rename -n 's/Magi The Labyrinth Of Magic Episode ([^68][^689]?|18|26|29) .+mp4/MTLOM (DUB) $1.mp4/g' *
    rename(Magi The Labyrinth Of Magic Episode 10 English Dubbed.mp4, MTLOM (DUB) 10.mp4)
    rename(Magi The Labyrinth Of Magic Episode 11 English Dubbed.mp4, MTLOM (DUB) 11.mp4)
    rename(Magi The Labyrinth Of Magic Episode 12 English Dubbed.mp4, MTLOM (DUB) 12.mp4)
    rename(Magi The Labyrinth Of Magic Episode 13 English Dubbed.mp4, MTLOM (DUB) 13.mp4)
    rename(Magi The Labyrinth Of Magic Episode 14 English Dubbed.mp4, MTLOM (DUB) 14.mp4)
    rename(Magi The Labyrinth Of Magic Episode 15 English Dubbed.mp4, MTLOM (DUB) 15.mp4)
    rename(Magi The Labyrinth Of Magic Episode 17 English Dubbed.mp4, MTLOM (DUB) 17.mp4)
    rename(Magi The Labyrinth Of Magic Episode 18 English Dubbed.mp4, MTLOM (DUB) 18.mp4)
    rename(Magi The Labyrinth Of Magic Episode 1 English Dubbed.mp4, MTLOM (DUB) 1.mp4)
    rename(Magi The Labyrinth Of Magic Episode 20 English Dubbed.mp4, MTLOM (DUB) 20.mp4)
    rename(Magi The Labyrinth Of Magic Episode 21 English Dubbed.mp4, MTLOM (DUB) 21.mp4)
    rename(Magi The Labyrinth Of Magic Episode 22 English Dubbed.mp4, MTLOM (DUB) 22.mp4)
    rename(Magi The Labyrinth Of Magic Episode 23 English Dubbed.mp4, MTLOM (DUB) 23.mp4)
    rename(Magi The Labyrinth Of Magic Episode 24 English Dubbed.mp4, MTLOM (DUB) 24.mp4)
    rename(Magi The Labyrinth Of Magic Episode 25 English Dubbed.mp4, MTLOM (DUB) 25.mp4)
    rename(Magi The Labyrinth Of Magic Episode 26 English Dubbed.mp4, MTLOM (DUB) 26.mp4)
    rename(Magi The Labyrinth Of Magic Episode 27 English Dubbed.mp4, MTLOM (DUB) 27.mp4)
    rename(Magi The Labyrinth Of Magic Episode 29 English Dubbed.mp4, MTLOM (DUB) 29.mp4)
    rename(Magi The Labyrinth Of Magic Episode 2 English Dubbed.mp4, MTLOM (DUB) 2.mp4)
    rename(Magi The Labyrinth Of Magic Episode 30 English Dubbed.mp4, MTLOM (DUB) 30.mp4)
    rename(Magi The Labyrinth Of Magic Episode 3 English Dubbed.mp4, MTLOM (DUB) 3.mp4)
    rename(Magi The Labyrinth Of Magic Episode 4 English Dubbed.mp4, MTLOM (DUB) 4.mp4)
    rename(Magi The Labyrinth Of Magic Episode 5 English Dubbed.mp4, MTLOM (DUB) 5.mp4)
    rename(Magi The Labyrinth Of Magic Episode 7 English Dubbed.mp4, MTLOM (DUB) 7.mp4)
    rename(Magi The Labyrinth Of Magic Episode 9 English Dubbed.mp4, MTLOM (DUB) 9.mp4)
    

    用于()保存模式并$1引用它。我不确定您希望0*替换的 发生什么 - 我只是把它拿出来了。根据需要进行调整。

    我拿出了不必要的逃跑

    正则表达式注意事项

    -[^68][^689]?|18|26|29匹配任何 char but 6or8可选地后跟任何 char but 6, 8, or 9, or, match 18, or, match 26, or, match 29。不是很优雅...

    • 2

相关问题

  • 如何从命令行仅安装安全更新?关于如何管理更新的一些提示

  • 如何从命令行刻录双层 dvd iso

  • 如何从命令行判断机器是否需要重新启动?

  • 文件权限如何工作?文件权限用户和组

  • 如何在 Vim 中启用全彩支持?

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    如何运行 .sh 脚本?

    • 16 个回答
  • Marko Smith

    如何安装 .tar.gz(或 .tar.bz2)文件?

    • 14 个回答
  • Marko Smith

    如何列出所有已安装的软件包

    • 24 个回答
  • Marko Smith

    无法锁定管理目录 (/var/lib/dpkg/) 是另一个进程在使用它吗?

    • 25 个回答
  • Martin Hope
    Flimm 如何在没有 sudo 的情况下使用 docker? 2014-06-07 00:17:43 +0800 CST
  • Martin Hope
    Ivan 如何列出所有已安装的软件包 2010-12-17 18:08:49 +0800 CST
  • Martin Hope
    La Ode Adam Saputra 无法锁定管理目录 (/var/lib/dpkg/) 是另一个进程在使用它吗? 2010-11-30 18:12:48 +0800 CST
  • Martin Hope
    David Barry 如何从命令行确定目录(文件夹)的总大小? 2010-08-06 10:20:23 +0800 CST
  • Martin Hope
    jfoucher “以下软件包已被保留:”为什么以及如何解决? 2010-08-01 13:59:22 +0800 CST
  • Martin Hope
    David Ashford 如何删除 PPA? 2010-07-30 01:09:42 +0800 CST

热门标签

10.10 10.04 gnome networking server command-line package-management software-recommendation sound xorg

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve