V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
aocif23
V2EX  ›  问与答

这种情况怎样批量重命名?(文件名包含的数字减 1)

  •  
  •   aocif23 · 2022 年 3 月 9 日 · 1617 次点击
  •   查看本主题需要登录
    这是一个创建于 1407 天前的主题,其中的信息可能已经有所发展或是发生改变。

    文件如下

    02_1.txt

    02_2.txt

    02_3.txt

    03_1.txt

    03_2.txt

    03_3.txt

    04_1.txt

    04_2.txt

    04_3.txt

    ....

    nn_n.txt

    想将前面 2 位数字减 1

    02_1.txt -> 01_1.txt

    02_2.txt -> 01_2.txt

    第 1 条附言  ·  2022 年 3 月 10 日
    #8 方法解决问题
    12 条回复    2022-03-10 16:21:43 +08:00
    dcsuibian
        1
    dcsuibian  
       2022 年 3 月 9 日   ❤️ 1
    用你最熟悉的语言,直接开写
    cnrting
        2
    cnrting  
       2022 年 3 月 9 日 via iPhone
    当你问完这个问题,脚本都已经写好了
    itechify
        3
    itechify  
    PRO
       2022 年 3 月 9 日 via Android
    写 shell10 分钟的事情
    iyear
        4
    iyear  
       2022 年 3 月 9 日
    不会写脚本就 advanceRenamer ,然而配置规则也挺麻烦还不如写个小脚本
    shinsekai
        5
    shinsekai  
       2022 年 3 月 9 日 via Android
    菲菲更名助手
    hsfzxjy
        6
    hsfzxjy  
       2022 年 3 月 9 日 via Android   ❤️ 1
    注意从小到大遍历,不然会覆盖
    jaredyam
        7
    jaredyam  
       2022 年 3 月 9 日
    [command line - Subtract 1 from all file names (rename them) in a directory. - Unix & Linux Stack Exchange]( https://unix.stackexchange.com/questions/116770/subtract-1-from-all-file-names-rename-them-in-a-directory )
    darklights
        8
    darklights  
       2022 年 3 月 9 日   ❤️ 1
    Powershell:
    ls *.txt | sort | ?{$_.Name -match '^(\d+)(_.+\.txt)$'} | %{$s=$Matches[1]; $n=$s.Length; Rename-Item $_ "$(([string]([int]$s-1)).PadLeft($n,'0'))$($Matches[2])"}

    测试通过。建议先备份。
    darklights
        9
    darklights  
       2022 年 3 月 9 日
    花了不止 10 分钟,惭愧……
    quzard
        10
    quzard  
       2022 年 3 月 9 日 via Android
    微软官方有工具可以做这个事情
    autoxbc
        11
    autoxbc  
       2022 年 3 月 10 日
    用高级语言写,不要用 shell
    tubimasky
        12
    tubimasky  
       2022 年 3 月 10 日
    菲菲更名宝贝
    关于   ·   帮助文档   ·   自助推广系统   ·   博客   ·   API   ·   FAQ   ·   Solana   ·   3478 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 28ms · UTC 04:56 · PVG 12:56 · LAX 20:56 · JFK 23:56
    ♥ Do have faith in what you're doing.