我有一个bash脚本,但它给了我烦人的输出,我不想看到。当然,我可以用这种方式隐藏它:
./script.sh >/dev/null 2>&1
但是我想把脚本放在“rc.local”或“cron job”中,所以如果它每隔5分钟或者在启动时收到输出就会非常糟糕。如果有一种方法可以告诉整个脚本隐藏输出,那将会很棒。
答案 0 :(得分:5)
如果要将所有输出重定向到脚本中的/dev/null
,可以这样做(在这种情况下,只有在环境变量{{1}时才执行重定向) }未设置):
DEBUG
您还可以检查您的输入是否来自TTY以检测交互式使用:
#!/bin/bash
[[ $DEBUG ]] || exec >/dev/null 2>&1
# ...continue with execution here.