我是Linux新手,必须删除文件名中的特定数字字符串。
以下是我的文件名:
AB.TEXT.OMN.BUFFER.INSERT.123.20130315.CSV
AB.TEXT.OMN.BUFFER.APPEND.5345667.20130315.CSV
我需要输出如下:
AB.TEXT.OMN.BUFFER.INSERT.20130315.CSV
AB.TEXT.OMN.BUFFER.APPEND.20130315.CSV
我想删除
123
和5345667
之间的字符串,或者在那个位置出现的其他数字。(第5次出现)和。(第6次出现)在文件名中。 最佳答案
cut
可以做到:
pax> echo 'AB.TEXT.OMN.BUFFER.INSERT.123.20130315.CSV' | cut -d. -f1-5,7-
AB.TEXT.OMN.BUFFER.INSERT.20130315.CSV
pax> echo 'AB.TEXT.OMN.BUFFER.APPEND.5345667.20130315.CSV' | cut -d. -f1-5,7-
AB.TEXT.OMN.BUFFER.APPEND.20130315.CSV
-d.
只需将分隔符设置为.
,-f1-5,7-
将为您提供除第六个字段之外的所有字段。关于linux - 删除文件名中两次出现字符串之间的字符串,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/15424197/