首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >巴什藏“杀”

巴什藏“杀”
EN

Stack Overflow用户
提问于 2013-12-31 17:46:49
回答 4查看 1.1K关注 0票数 4

我看不到从我的脚本中隐藏“被杀死的”输出。请帮帮忙。

代码语言:javascript
复制
killall -9 $SCRIPT

我试过:

代码语言:javascript
复制
killall -9 $SCRIPT >/dev/null 2>&1

似乎每个人都会重定向组合。谢谢你的帮助。

* UPDATE *

主脚本无法在后台运行。它在运行时向用户输出大量信息。不过,谢谢你的意见。还有其他想法吗?

以下是所需的输出

HEV终止

管理员@hev-DEV:~/hev-1.2.7美元

以下是当前的输出:

HEV终止

被杀了

管理员@hev-DEV:~/hev-1.2.7美元

EN

回答 4

Stack Overflow用户

发布于 2013-12-31 18:00:10

不是打印它的脚本,而是外壳。您可以通过将它放在背景中并等待它完成,从那里重定向错误来抑制它:

代码语言:javascript
复制
./script &
wait 2>/dev/null
票数 4
EN

Stack Overflow用户

发布于 2013-12-31 18:04:04

看起来,如果在子subshell中执行脚本(包括&),就可以避免这种情况:

代码语言:javascript
复制
$ ( ./script.sh & )
$ ps
  PID TTY          TIME CMD
14208 pts/0    00:00:00 bash
16134 pts/0    00:00:00 script.sh
16135 pts/0    00:00:00 sleep
16136 pts/0    00:00:00 ps
$ killall script.sh
$

如果我像./script.sh那样执行它(没有子subshell),那么我将得到输出

代码语言:javascript
复制
[1]+  Terminated              ./script.sh &>/dev/null
票数 1
EN

Stack Overflow用户

发布于 2016-02-20 18:36:56

试着..。

代码语言:javascript
复制
(killall -9 $SCRIPT) 2>/dev/null

这将执行子subshell中的"killall“,并且重定向来自该子subshell的所有输出,包括”已杀死“输出。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20861295

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档