shell脚本中执行系统命令卡死问题
问题描述在shell脚本里执行一些命令,例如tar,或者使用ssh调用远程脚本,使用容器调用时有时会出现卡死情况。#!/bin/shtar -cvzf abc.tar.gz abc问题原因tar命令执行后会需要占用终端的输入输出打印执行结果,而脚本本身就是一个进程,它执行tar命令也需要占用终端的输入输出打印tar的执行结果,那么就产生了死锁问题,导致脚本A进程一直卡死。解决方法将命令执行结果打印
·
问题描述
在shell脚本里执行一些命令,例如tar,或者使用ssh调用远程脚本,使用容器调用时有时会出现卡死情况。
#!/bin/sh
tar -cvzf abc.tar.gz abc
问题原因
tar命令执行后会需要占用终端的输入输出打印执行结果,而脚本本身就是一个进程,它执行tar命令也需要占用终端的输入输出打印tar的执行结果,那么就产生了死锁问题,导致脚本A进程一直卡死。
解决方法
将命令执行结果打印重定向。
#!/bin/sh
tar -cvzf abc.tar.gz abc >/dev/null 2>&1
更多推荐
已为社区贡献1条内容
所有评论(0)