在模式-unix-AIX之间提取文本
我想在两种模式之间提取文本。我使用的命令在AIX上不起作用,但在linux上起作用 首先,我在文件中查找一个模式的出现,我有这个在模式-unix-AIX之间提取文本,unix,sed,aix,Unix,Sed,Aix,我想在两种模式之间提取文本。我使用的命令在AIX上不起作用,但在linux上起作用 首先,我在文件中查找一个模式的出现,我有这个 sed -n "/STEP 005450/p" step_100 STEP 005450 ***ACTIVATED*** Thu Oct 5 17:31:05 CEST 2017 STEP 005450 REF R-A493 STEP 000010 ( command -s <CONTAINER> ) STEP 005450 ***FAILURE***
sed -n "/STEP 005450/p" step_100
STEP 005450 ***ACTIVATED*** Thu Oct 5 17:31:05 CEST 2017
STEP 005450 REF R-A493 STEP 000010 ( command -s <CONTAINER> )
STEP 005450 ***FAILURE*** Thu Oct 5 17:31:05 CEST 2017 Return code : 2
STEP 005450 ***ACTIVATED*** Thu Oct 5 17:33:54 CEST 2017
STEP 005450 REF R-A493 STEP 000010 ( command -s CONT1 )
STEP 005450 ***SUCCESFUL*** Thu Oct 5 17:33:55 CEST 2017
STEP 005450 ***ACTIVATED*** Thu Oct 5 17:31:05 CEST 2017
STEP 005450 REF R-A493 STEP 000010 ( command -s <CONTAINER> )
STEP 005450 ***FAILURE*** Thu Oct 5 17:31:05 CEST 2017 Return code : 2
通常,我应该吃这个
sed -n "/STEP 005450/p" step_100
STEP 005450 ***ACTIVATED*** Thu Oct 5 17:31:05 CEST 2017
STEP 005450 REF R-A493 STEP 000010 ( command -s <CONTAINER> )
STEP 005450 ***FAILURE*** Thu Oct 5 17:31:05 CEST 2017 Return code : 2
STEP 005450 ***ACTIVATED*** Thu Oct 5 17:33:54 CEST 2017
STEP 005450 REF R-A493 STEP 000010 ( command -s CONT1 )
STEP 005450 ***SUCCESFUL*** Thu Oct 5 17:33:55 CEST 2017
STEP 005450 ***ACTIVATED*** Thu Oct 5 17:31:05 CEST 2017
STEP 005450 REF R-A493 STEP 000010 ( command -s <CONTAINER> )
STEP 005450 ***FAILURE*** Thu Oct 5 17:31:05 CEST 2017 Return code : 2
步骤005450***已激活***2017年10月5日星期四17:31:05 CEST
步骤005450参考R-A493步骤000010(命令-s)
步骤005450***失败***10月5日星期四17:31:05 CEST 2017返回代码:2
感谢您的教程帮助也许这也适用于AIX sed:
| sed -n "/ACTIVATED/,/FAILURE/{ /ACTIVATED/{h;b}; H; /FAILURE/{g;p}; }"
或作为一个命令:
sed -n '/STEP 005450/{ /ACTIVATED/,/FAILURE/{ /ACTIVATED/{h;b}; H; /FAILURE/{g;p}; }; }' file
输出:
STEP 005450 ***ACTIVATED*** Thu Oct 5 17:31:05 CEST 2017
STEP 005450 REF R-A493 STEP 000010 ( command -s )
STEP 005450 ***FAILURE*** Thu Oct 5 17:31:05 CEST 2017 Return code : 2
步骤005450***已激活***2017年10月5日星期四17:31:05 CEST
步骤005450参考R-A493步骤000010(命令-s)
步骤005450***失败***10月5日星期四17:31:05 CEST 2017返回代码:2
它不工作:/。它返回以下错误:sed:label/ACTIVATED/,/FAILURE/{/ACTIVATED/{h;b};h;/FAILURE/{g;p};}大于8个字符。太糟糕了。值得一试在每个逻辑机会,即
/ACTIVATED/{;h;b;}代码>一些SED对解析方式非常挑剔,AIX在很多方面都很挑剔;-)。Good luck.GNU sed不会按照您的状态提供所需的输出。可能你有一个复制粘贴错误。我已经手动发送了命令。你的问题目前还不清楚。请遵守