SED文本文件中的值过多

时间:2014-06-03 23:45:59

标签: bash unix sed

大家好,我想在这里找出 sed 命令:

从卷曲中输入约25个这项工作的序列:

XXXFC_BAR_MANAGER_API
API 20140603 0023 2182093 2082093 3 2
2014820906820903 10:02:54
2014820906820903 10:36:12
0:34:57

XXXFC_BAR_MANAGER_API
API 20140603 0022 2182093 2082093 3 2
2014820906820903 10:02:54
2014820906820903 10:36:12
0:34:57

XXXFC_BAR_MANAGER_API
API 20140603 0021 2182093 2082093 3 2
2014820906820903 10:02:54
2014820906820903 10:36:12
0:34:57

我的sed:sed -e's / API //'正在删除两种情况下的API,文件也没有结构,所以你不能忘记它,我想。这些解决方案不能正常工作sed's / ^ API //'和sed's / ^ API // g'和sed -e's / ^ API \ s $ // g'

所以我正在寻找所有序列的输出如下 - “API从”第二行“消失了

XXXFC_BAR_MANAGER_API
20140603 0021 2182093 2082093 3 2
2014820906820903 10:02:54
2014820906820903 10:36:12
0:34:57

3 个答案:

答案 0 :(得分:0)

您可以使用以下sed命令:

sed 's/^API //' input

^标志着一条线的开头。这就是为什么上面的命令只删除行开头API<space>的出现。

答案 1 :(得分:0)

您需要一个定位点sed 's/^API//g'^锚定到行开头,$到行尾。您可以在API之后添加空格。

答案 2 :(得分:0)

以下是此案的合法答案:

sed 's/API\s2/2/g' 

将2014年日期的2代替为2,以便为SED提供去除API 2值的模式!