首页 > 解决方案 > 在 Linux 中删除文件名的中间部分

问题描述

我在 Linux 命令行中使用该命令尝试了很多变体,rename当我执行这些命令时没有任何反应——没有错误,也没有预期的结果。我尝试使用该find命令查找文件,然后重命名它们,但没有成功。我有看起来像这样的文件

201901.cdas1.20190101.pgrbh.grb2flxf06.grb2
201902.cdas1.20190102.pgrbh.grb2flxf06.grb2 

对于需要特定文件名格式的脚本,我需要它们看起来像这样,201901.flxf06.grb2并且201902.flxf06.grb2.

我需要使用通配符删除文件名的中间部分,因为多个文件中的日期会发生变化。删除的部分是这样的:cdas1.pgrbh.grb2

这不是家庭作业,我一天中大部分时间都在搜索互联网,试图使用除重命名选项或 for 循环之外的其他选项,因为我得到一个缺少 } 大括号的错误。谢谢!

标签: linuxfilenamespartial

解决方案


假设您正在使用perlrename 命令:

rename 's/cdas1\.pgrbh\.grb2//' *.cdas1.20190101.pgrbh.grb2*.grb2

推荐阅读