我一直在使用rename
命令批量重命名文件。到目前为止,我有如下文件:
2010.306.18.08.11.0000.BO.ADM..BHZ.SAC
2010.306.18.08.11.0000.BO.AMM..BHZ.SAC
2010.306.18.08.11.0000.BO.ASI..BHE.SAC
2010.306.18.08.11.0000.BO.ASI..BHZ.SAC
并使用rename 2010.306.18.08.11.0000.BO. "" *
,rename .. _. *
我将它们减少到:
ADM_.BHZ.SAC
AMM_.BHZ.SAC
ASI_.BHE.SAC
ASI_.BHZ.SAC
这正是我想要的。我想有点笨拙,但它确实有效。现在问题出现了,因为我有如下文件:
2010.306.18.06.12.8195.TW.MASB..BHE.SAC
2010.306.18.06.14.7695.TW.CHGB..BHN.SAC
2010.306.18.06.24.4195.TW.NNSB..BHZ.SAC
2010.306.18.06.25.0695.TW.SSLB..BHZ.SAC
它们存在于同一文件夹中。我一直在尝试在rename
命令中使用通配符来获得与上述类似的结果,例如。rename 2010.306.18.*.*.*.*. ""
但这会将第一次出现附加2010.306.18.*.*.*.*.
到所有其他文件的开头 - 显然不是我所追求的,所以我得到:
2010.306.18.06.12.8195.TW.MASB..BHE.SAC
2010.306.18.06.12.8195.TW.MASB..BHE.SAC2010.306.18.06.14.7695.TW.CHGB..BHN.SAC
2010.306.18.06.12.8195.TW.MASB..BHE.SAC2010.306.18.06.24.4195.TW.NNSB..BHZ.SAC
2010.306.18.06.12.8195.TW.MASB..BHE.SAC2010.306.18.06.25.0695.TW.SSLB..BHZ.SAC
我想我在这里不了解通配符的一个相当基本的原则,所以有人可以解释为什么这不起作用以及我可以做些什么来获得所需的结果(最好使用rename
)。
注意
为了澄清,输出希望是:
ADM_.BHZ.SAC
AMM_.BHZ.SAC
ASI_.BHE.SAC
ASI_.BHZ.SAC
MASB.BHE.SAC
CHGB.BHN.SAC
NNSB.BHZ.SAC
SSLB.BHZ.SAC