linux – 在bash脚本中调用gawk的奇怪返回值“134”
发布时间:2020-12-14 01:37:32 所属栏目:Linux 来源:网络整理
导读:在bash脚本中使用gawk时遇到了一个非常奇怪的问题. 在这个脚本中,我使用一个函数来做一些文本处理.即使是非常简单的gawk命令也会返回错误134 #!/bin/bash testFunc() { log "Before gawk: $?" gawk '{print}' file log "After gawk: $?" } 如果我在控制台中
在bash脚本中使用gawk时遇到了一个非常奇怪的问题.
在这个脚本中,我使用一个函数来做一些文本处理.即使是非常简单的gawk命令也会返回错误134 #!/bin/bash testFunc() { log "Before gawk: $?" gawk '{print}' file log "After gawk: $?" } 如果我在控制台中手动运行此脚本,它将完美运行,$?将永远为0表示成功,但如果我在etc / rc.d / for level 3中使用此脚本作为Linux启动脚本,则执行gawk后,$?总是134,我不知道134的含义是什么. 如果我将gawk'{print}’文件替换为gawk –version,结果还可以,$?是0. 解决方法
退出代码134表示您的程序已中止(收到SIGABRT),可能是由于断言失败.
(正如@hobbs在下面的评论中解释的那样,你从退出代码中减去128以映射到列表中的SIGABRT.) 这是命令kill的sigal列表 kill -l 1) SIGHUP 2) SIGINT 3) SIGQUIT 4) SIGILL 5) SIGTRAP 6) SIGABRT 7) SIGEMT 8) SIGFPE 9) SIGKILL 10) SIGBUS 11) SIGSEGV 12) SIGSYS 13) SIGPIPE 14) SIGALRM 15) SIGTERM 16) SIGUSR1 17) SIGUSR2 18) SIGCHLD 19) SIGPWR 20) SIGWINCH 21) SIGURG 22) SIGIO 23) SIGSTOP 24) SIGTSTP 25) SIGCONT 26) SIGTTIN 27) SIGTTOU 28) SIGVTALRM 29) SIGPROF 30) SIGXCPU 31) SIGXFSZ 32) SIGWAITING 33) SIGLWP 34) SIGFREEZE 35) SIGTHAW 36) SIGCANCEL 37) SIGLOST 38) SIGXRES 41) SIGRTMIN 42) SIGRTMIN+1 43) SIGRTMIN+2 44) SIGRTMIN+3 45) SIGRTMAX-3 46) SIGRTMAX-2 47) SIGRTMAX-1 48) SIGRTMAX (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |