有人知道如何编写脚本(用 Java 或 Powershell 编写)来重命名一批.txt
文件,以便按时间顺序进行计数吗?例如,我需要从 C1_1+100.txt、C1_1+200.txt、C1_1+300.txt 开始……一直到 +900.txt,然后滚动到 C1_2+000.txt、C1_2+100.txt……等等,一直到 C1_28+900.txt?
文件的日期和时间.txt
无关紧要。只有其中的数据。所有文件都位于 USB 驱动器上的文件夹中。
我尝试使用一个名为“Advanced Renamer”的程序来重命名它们,但它无法按照我想要的方式重命名它们(C1_1+100.txt、C1_1+200.txt、C1_1+300.txt......),但这个程序可以接受 JavaScript 来帮助完成此操作。我将附上一张图片Advanced Renamer 中的配置文件示例原始文件名(Profile1.txt、Profile2.txt、Profile3.txt)以及我希望它在图像中显示的样子的示例。我手动覆盖了这三个文件作为示例。但是,我必须重命名大约 2700 个文件,而且一次重命名一个文件非常痛苦。
任何帮助都将非常有益。
答案1
我编写了一个 bash 脚本来重命名.txt
所定义的所有文件。
#!/bin/bash
let "i=0"
let "j=0"
for F in /test-directory/*.txt
do
if [ $i -gt 9 ] #if value of i goes beyond 9
then
i=0 #resets the value of i in order to have file names like 000-900
j=$((j+1))
fi
mv "$F" /test-directory/C1_"$j"+"$i"00.txt #rename file
i=$((i+1))
done