Bash 查找未缩进标题下的缩进行

Bash 查找未缩进标题下的缩进行,bash,Bash,我需要解析文件,但我不知道解析的代码 文件的示例: proces.review_SCAN2.status ONLINE ONLINE tsdumca12 proces.review_SCAN3.status ONLINE ONLINE tsdumca12 proces.kick ONLINE ONLINE tsdumca11

我需要解析文件,但我不知道解析的代码

文件的示例:

proces.review_SCAN2.status ONLINE ONLINE tsdumca12 proces.review_SCAN3.status ONLINE ONLINE tsdumca12 proces.kick ONLINE ONLINE tsdumca11 ONLINE ONLINE tsdumca12 OFFLINE OFFLINE proces.test01_ica01.test.opp ONLINE ONLINE tsdumca11 或

grep过程。查看\u SCAN2.状态

ONLINE ONLINE tsdumca12 在线tsdumca12
我需要找到从名称“proces.review_SCAN2.status”到最后一行号。我尝试使用正则表达式,但没有得到它。你能帮帮我吗?

grep
没有跨行存储状态的方法,这使得它对于这项工作来说是一个糟糕的选择。考虑<代码> AWK < /代码>代替:

findSection() {
  awk -v tgt_section="$1" '
    /^[[:alpha:]]/ { curr_section=$1 }
    /^[[:space:]]/ && curr_section == tgt_section { print $0 }
  '
}

findSection proces.kick <inFile
findSection(){
awk-v tgt_段=“$1”
/^[[:alpha:][]/{curr_section=$1}
/^[[:space:][]/&&curr_section==tgt_section{print$0}
'
}

findSection proces.kick
grep
没有跨行存储状态的方法,因此对于此作业来说,它是一个糟糕的选择。考虑<代码> AWK < /代码>代替:

findSection() {
  awk -v tgt_section="$1" '
    /^[[:alpha:]]/ { curr_section=$1 }
    /^[[:space:]]/ && curr_section == tgt_section { print $0 }
  '
}

findSection proces.kick <inFile
findSection(){
awk-v tgt_段=“$1”
/^[[:alpha:][]/{curr_section=$1}
/^[[:space:][]/&&curr_section==tgt_section{print$0}
'
}

findSection proces.kick一般来说,最好从你想要完成的事情开始,而不是从你认为合适的工具开始。在这种情况下,
grep
根本不是工作的最佳选择(问题更适合于
awk
)。一般来说,最好从你想要完成的事情开始,而不是从你认为合适的工具开始。在这种情况下,
grep
根本不是工作的最佳选择(问题更适合
awk
)。其结果是:联机联机tsdumca12联机tsdumca12联机tsdumca12联机tsdumca11联机tsdumca12脱机脱机联机tsdumca12脱机脱机联机tsdumca12我只需打印3行:联机tsdumca11联机在线tsdumca12离线结果完全正确,只打印您想要的三行,如果这个精确的(复制和粘贴的)代码给定从您的问题复制和粘贴的输入;在的在线解释器中查看它的运行。如果您的输入文件与您提供给我们的不同,我们无法帮助您(但您可以通过分叉ideone实例并找出需要更改哪些内容才能重现错误来帮助自己)。好的。。。我尝试了不使用该函数,但如果使用de函数,效果会很好!谢谢你的支持!!哇!谢谢你对艾甘的支持!!效果很好!!结果是:在线在线tsdumca12在线tsdumca12在线tsdumca12在线tsdumca11在线tsdumca12离线在线tsdumca12离线在线tsdumca12离线在线tsdumca12我只需要打印3行:在线在线tsdumca11在线在线tsdumca12离线结果完全正确,只打印您想要的三行,如果这个精确的(复制和粘贴的)代码给定从您的问题复制和粘贴的输入;在的在线解释器中查看它的运行。如果您的输入文件与您提供给我们的不同,我们无法帮助您(但您可以通过分叉ideone实例并找出需要更改哪些内容才能重现错误来帮助自己)。好的。。。我尝试了不使用该函数,但如果使用de函数,效果会很好!谢谢你的支持!!哇!谢谢你对艾甘的支持!!效果很好!!