【发布时间】:2017-09-11 18:08:13
【问题描述】:
我正在尝试过滤执行 bash -x 命令时产生的特定输出。这是我的代码:
touch ./log/time_$now_time.txt
touch ./log/session_$now_time.log
case $multinode in
true)whiptail --title "Multinode system" --msgbox "Multinode system found! Redirecting to the Multinode Menu... " 10 60
cd multinode
script -q -t 2> ../log/time_$now_time.txt -c "bash -x ./menu.sh" -f ../log/session_$now_time.log ;;
false)whiptail --title "Singlenode system" --msgbox "Singlenode system found!Redirecting to the Singlenode Menu..." 10 60
cd singlenode
script -q -t 2> ../log/time_$now_time.txt -c "bash -x ./menu.sh" -f ../log/session_$now_time.log;;
*)
echo "Invalid option. Quitting"
break ;;
esac
有没有办法记录 bash -x 产生的所有 +++ 输出,但不显示它? 如果我将所有输出重定向到 /dev/null 我也会丢失whiptail 视图,但是我不想丢失 bash -x 输出,只是不想显示。
这是我在启动脚本时看到的:
+++ date +%d_%m_%Y
++ now=11_09_2017
+ true
++ whiptail --title 'Multinode Main Menu' --menu '\n\n\n\n\n\n\n\n'...
+ case $OPTION in
+ echo 'Bye !'
Bye !
#
如何隐藏所有 +++ 行,但将它们记录在会话日志文件中?
【问题讨论】: