Linux 用于从文本日志文件(sqlcode字段值)中灰显/检索值的Shell脚本
您好,我需要从运行sql语句后生成的OutFile中检索sqlcode值 下面的sqlcode值显然是0,我需要能够从下面格式的多个语句块中获取该值 我不能使用GNU函数-grep/sed/awk可能可以工作,但我自己还不能使用它们获取sqlcode值 Outfile将如下所示:Linux 用于从文本日志文件(sqlcode字段值)中灰显/检索值的Shell脚本,linux,bash,shell,grep,sqlcode,Linux,Bash,Shell,Grep,Sqlcode,您好,我需要从运行sql语句后生成的OutFile中检索sqlcode值 下面的sqlcode值显然是0,我需要能够从下面格式的多个语句块中获取该值 我不能使用GNU函数-grep/sed/awk可能可以工作,但我自己还不能使用它们获取sqlcode值 Outfile将如下所示: SQLCA Information sqlcaid : SQLCA sqlcabc: 136 sqlcode: 0 sqlerrml: 0 sqlerrmc: sqlerrp : SQLRI01
SQLCA Information
sqlcaid : SQLCA sqlcabc: 136 sqlcode: 0 sqlerrml: 0
sqlerrmc:
sqlerrp : SQLRI01F
sqlerrd : (1) -2147221503 (2) 1 (3) 4
(4) 0 (5) 0 (6) 0
sqlwarn : (1) (2) (3) (4) (5) (6)
(7) (8) (9) (10) (11)
sqlstate: 00000
如果行中有字符串“sqlcode:”,则替换所有内容,并在字符串“sqlcode:”之后和空格之前记住一个或多个数字,然后打印记住的部分
实时版本可从。awk'/sqlcode/{print$7}文件获得
0
awk在文件中查找默认值/sqlcode/
打印$7打印第七个字段听起来像是一个家庭作业问题。你需要努力。请编辑你的Q,以显示你解决问题的最佳尝试。(你认为什么应该有效);如果我们不知道你尝试过什么,我们就无法帮助你提高理解力。祝你好运。谢谢你的回答。我知道这是怎么回事,但是。。。。我在脚本var=$(sed-n'/sqlcode:/s/*sqlcode:([0-9]\+)./\1/p'file.out)中将sed包装在一个变量中,当我在linux AIX服务器上的一个脚本中实现它时,在同一个目录中使用file.out,它将不返回任何内容…我不太明白,我尝试将它作为shell和bash运行
sed -n '/sqlcode: /s/.*sqlcode: \([0-9]\+\) .*/\1/p'