我发现了一些在 Windows 上使用批处理代码更改名称或删除名称的一部分的主题,但我没有搜索到。
我有一些文件名为:
XXX0001.scl1
XXX0002.scl1
XXX0003.scl1
XXX0004.scl1
...
XXX0009.scl1
XXX0010.scl1
XXX0011.scl1
...
XXX0099.scl1
XXX0100.scl1
XXX0101.scl1
我想删除每个名字的第一个零(斜体和粗体)
感谢您的帮助
答案1
答案2
您可以使用rename
适用于 Windows、Linux 和 Unix 的命令行工具(因为它是一个 perl 脚本)。
删除所有前导零的示例语法(要查看重命名的内容,请添加-v
参数):
rename 's/0*([0-9]*)/$1/g' *.scl1
要使用通配符的全部功能,请将其安装在Windows 上的 Bash例如
sudo apt-get install rename
在 Windows 上的 Bash 中测试步骤:
$ touch XXX0001.scl1
$ for i in $(seq -w 0001 00011); do touch XXX$i.scl1; done
$ ls
XXX00001.scl1 XXX00003.scl1 XXX00005.scl1 XXX00007.scl1 XXX00009.scl1 XXX00011.scl1
XXX00002.scl1 XXX00004.scl1 XXX00006.scl1 XXX00008.scl1 XXX00010.scl1
$ rename 's/0*([0-9]*)/$1/g' *.scl1
$ ls
XXX10.scl1 XXX1.scl1 XXX3.scl1 XXX5.scl1 XXX7.scl1 XXX9.scl1
XXX11.scl1 XXX2.scl1 XXX4.scl1 XXX6.scl1 XXX8.scl1