标签: batch-rename

如何使用 GPRename 的正则表达式功能将匹配组重新插入“替换”?

我一直在使用GPRename来批量重命名文件;这比单独更正每个文件更有效,但似乎仍然比它可能的效率低,主要是因为我不理解所使用的正则表达式语法,或者因为正则表达式实现不完整1

给定以下语法的文件列表:

(01) - title of file1.avi
(02) - title of file2.avi
(03) - title of file3.avi
Run Code Online (Sandbox Code Playgroud)

我尝试使用“替换”(选择正则表达式选项,取消选择区分大小写的选项):

(\(\d{2}\))
Run Code Online (Sandbox Code Playgroud)

然后预览显示(鉴于我尚未指定“替换为”选项):

title of file1.avi
title of file2.avi
title of file3.avi
Run Code Online (Sandbox Code Playgroud)

这很好,很明显正则表达式正在识别正确的组((01))。现在,我希望在“替换为”选项中(使用 JavaScript 语法)使用:

$1
Run Code Online (Sandbox Code Playgroud)

(我也尝试使用'$1',\1'\1'

这只是为了检查我是否可以访问匹配的组,而我似乎不能,正如我想的那样,匹配的组被替换为文字替换字符串。

所以,我的问题是:是否可以匹配一组特定的字符,在这种情况下是括号内的数字,然后将它们插入到替换字符串中?所以:

(01) title of file1.avi
(02) title of file2.avi
(03) title of file3.avi
Run Code Online (Sandbox Code Playgroud)

变成:

01 title of file1.avi
02 title of file2.avi
03 title of file3.avi
Run Code Online (Sandbox Code Playgroud)
  1. 我个人绝对怀疑前者

regex batch-rename

6
推荐指数
1
解决办法
1862
查看次数

如何重命名多个文件中的某个前缀?

我有一个文件夹,其中包含 500 多个带有特定前缀的文件。这些文件分布在一个目录中的多个文件夹中。我的目标是在这些多个文件中重命名该前缀。

示例文件名和路径:

  • 我的文件/我的- my- old -FileOfAlice.txt
  • 我的文件/文件夹 1/我的- my- old -FileOfTom.odt
  • 我的文件/文件夹 2/ my- old -FileOfJane.doc

目标是将它们重命名为:

  • 我的文件/我的-文件新的-FileOfAlice.txt
  • 我的文件/文件夹 1/我的- new -FileOfTom.odt
  • 我的文件/文件夹 2/my- new -FileOfJane.doc

笔记:

  • 这些文件没有相同的扩展名。
  • 这些文件分布在同一目录下的多个文件夹中。我正在使用 Kubuntu 16.10。任何面向 Ubuntu 的答案都将被接受和赞赏。

任何命令行、程序、指南、教程或链接将不胜感激。提前致谢!

command-line files batch-rename

6
推荐指数
1
解决办法
6884
查看次数

从多个目录中删除括号和括号

我试图找到一种从目录中删除括号和方括号的方法,但它们的模式并不完全相同。有些是这样的:(1234) ABC [xyz]。其他人都是这样[xyz] ABC (1234)(987)

编辑:所需的输出将是 ABC

我怎样才能做到这一点?

command-line batch-rename

6
推荐指数
1
解决办法
6744
查看次数

将字符从文件名的开头移到结尾(在扩展名之前)并添加空格

我在原始命名方案中有大约 2000 个文件。

我需要将它们全部取出,将前 4 个字符移动到扩展名之前的文件名末尾,然后在前 4 个字符之前添加一个空格。

基本上,来自:

0123 [UNKNOWN] (Final Fantasy 9) headshot of Freya Crescent {sketch} (ORIGINAL).jpg
Run Code Online (Sandbox Code Playgroud)

[UNKNOWN] (Final Fantasy 9) headshot of Freya Crescent {sketch} (ORIGINAL) 0123.jpg
Run Code Online (Sandbox Code Playgroud)

command-line batch-rename

6
推荐指数
1
解决办法
2198
查看次数

重命名具有复杂编号名称的多个文件

我有 365 个文件名

MOD11A1.A2010001.h24v06.006.2016025150444.hdf
MOD11A1.A2010002.h24v06.006.2016025151748.hdf
MOD11A1.A2010003.h24v06.006.2016025163706.hdf
Run Code Online (Sandbox Code Playgroud)

我想将这些文件重命名为:

modis1.hdf
modis2.hdf
modis3.hdf
Run Code Online (Sandbox Code Playgroud)

mv为每个文件分别使用该命令来重命名它们。

我如何一次性实现这一目标?

command-line rename batch-rename mv

6
推荐指数
4
解决办法
2182
查看次数

如何将文件从具有相同目录名称的子目录移动到其相对上层/父目录?

所以,我有一个这样的目录结构:

parent/
??? sub1
?   ??? source
?       ??? file1
?       ??? file2
??? sub2
?   ??? sub2.1
?       ??? source
?           ??? something1
?           ??? something2
??? sub3
    ??? sub3.1
        ??? sub3.1.1
            ??? source
                ??? other.zip
Run Code Online (Sandbox Code Playgroud)

我想将所有文件(具有不同文件名)从所有命名的目录移动source到其相对的上层/父目录。所以,结果应该是这样的:

parent/
??? sub1
?   ??? file1
?   ??? file2
?   ??? source
??? sub2
?   ??? sub2.1
?       ??? something1
?       ??? something2
?       ??? source
??? sub3
    ??? sub3.1
        ??? sub3.1.1
            ??? other.zip
            ??? source
Run Code Online (Sandbox Code Playgroud)

有没有一种简单的方法( …

command-line directory batch-rename

6
推荐指数
2
解决办法
5024
查看次数

使用单个命令重命名多个文件扩展名

我通过邮件收到了一些重要文件。大约有 150 个这样的文件。文件的扩展名为 zip1、zip2、zip3、zip_ 等。我只想使用单个命令将这些文件的扩展名改回 zip,以避免重命名每个文件的手动任务。

command-line batch-rename

5
推荐指数
2
解决办法
3486
查看次数

如何在ubuntu中将文件名减1

我的.png文件夹中有大约 200 个文件,命名为 -

02.png
03.png
04.png
...
201.png
Run Code Online (Sandbox Code Playgroud)

如您所见,我没有,01.png所以我想将所有文件重命名减一,使其像-

01.png
02.png
03.png
...
200.png
Run Code Online (Sandbox Code Playgroud)

是否可以通过 ubuntu 中的任何命令来完成?

以下是我没有运气尝试的命令 -

rename -n '/d{2}\.png$d{2}-1\.png/' *.png
Run Code Online (Sandbox Code Playgroud)

files batch-rename

5
推荐指数
1
解决办法
524
查看次数

关于使用命令重命名的问题

我使用命令rename同时重命名多个文件如下

但是我如何在同一个命令中进行多个更改

即改变1 to A和改变2 to B

* 更新 1 *

我使用以下案例进行测试,但出现错误

touch {1..100}
rename 's/0/A/; s/1/B/; s/2/C/; s/3/D/; s/4/E/; s/5/F/; s/6/G/; s/7/H/;s/8/I/; s/9/J/' *
Run Code Online (Sandbox Code Playgroud)

结果是

ls 
B    BE  C   CF  D3  DG  EA  EH  FB  FI  GC  GJ  HD  I   IE  J9  JF
B1   BF  C2  CG  DA  DH  EB  EI  FC  FJ  GD  H   HE  I8  IF  JA  JG
BA   BG  CA  CH  DB  DI  EC  EJ  FD  G   GE  H7  HF  IA …
Run Code Online (Sandbox Code Playgroud)

command-line rename batch-rename

5
推荐指数
2
解决办法
278
查看次数

删除目录中所有文件的文件名的最后 n 个字符

如何通过终端删除某个目录中所有文件名的最后 12 个字符?

command-line batch-rename

5
推荐指数
2
解决办法
3万
查看次数

标签 统计

batch-rename ×10

command-line ×8

files ×2

rename ×2

directory ×1

mv ×1

regex ×1