我有一个文件名
KPMG_MRC_REVS_DAILY_YYYYMMDD.txt
eFrice_Derivatives_Revs_Daily_YYYYMMDD.txt
我要确定模式YYYYMMDD
和
在模式之前去除字符串。
例如,我需要提取KPMG_MRC_REVS_DAILY_
作为输出
我怎么用sed做到这一点?
例如
echo "KPMG_MRC_REVS_DAILY_YYYYMMDD.txt" |sed "some regx g"
答案 0 :(得分:1)
echo "KPMG_MRC_REVS_DAILY_YYYYMMDD.txt" | sed -E 's/[0-9]{8}//'
如果文件名中除日期标签外没有8位数字,则可以使用。
[0-9] {8} :是指紧随其后的8位数字。
答案 1 :(得分:0)
使用Perl
$ echo "KPMG_MRC_REVS_DAILY_20181101.txt" | perl -ne ' { s/(.*)_(\d+)\.txt/\2/g ; print } '
20181101