Windows 脚本使用正则表达式来“排序”文件

Windows 脚本使用正则表达式来“排序”文件

我有一堆文件(约 10,000 个)需要排序。文件名如下所示:

"variable-name_setting1_setting2_setting3_method_group"

所有三个设置都是 1 到 6 位数字(取决于设置),方法是一个字符串(始终以 f 开头,后跟 3 到 4 个字符),并且可以忽略组(我也不打算按此排序)。

我有两种类型的变量,这两种类型各有两种“子类型”(例如“ty_x_pe1”、“ty_y_pe1”、“ty_x_pe2”和“ty_y_pe2”)。

最佳情况是根据找到的文件创建一个文件夹结构(首先是方法,然后是变量的类型和子类型,然后是设置)。

由于我不太熟悉脚本(不幸的是我缺少编写程序的软件而且我不再习惯编写 C 或 Java 代码)我不确定这有多么简单。

假设这太麻烦了,那么有一个脚本也会很有帮助,在我给它关于目标文件夹的信息后,它只移动文件(而不创建(子)文件夹)(例如,使用某种方法和某个变量移动所有文件)。我希望我的问题很清楚。提前谢谢!

编辑:示例文件名是

crb_gdp_g_1600_16_20_fweo2_galt_1.txt
crb_r_g_1600_16_20_fweo2_galt_1.txt
crt_gdp_g_1600_16_20_fweo2_galt_1.txt
crt_r_g_1600_16_20_fweo2_galt_1.txt

有两种类型的变量(crx_gdp 和 crx_r)和两种“子类型”(t 和 b)。“g”只是一个可以忽略的字符。

一个子文件夹应如下所示:

method1/credit_gdp/total_credit/x_16/y_20/z_1600/

method1 由“fweo2”标识,credit_gdp 由“crx_gdp”标识,total_credit 由 crt_gdp 中的 t 标识,其余三个文件夹由数字标识。我希望这足够清楚了。

相关内容