我有适用于 windscribe vpn 的可用脚本。目前没有 GUI。它们从桌面运行没有问题。我如何查看终端中的输出。
我可以打开通知窗口但如何获取其中的输出?
我认为命令是什么并不重要,必须有基本命令才能实现这一点。
有没有比使用通知窗口更好的方法?
答案1
您可以将输出重定向到某些文件,例如:
./yourscript.sh 1> log.txt 2> errlog.txt
然后你可以打开另一个终端窗口,在那里你可以执行类似
tail -f log.txt
然后你就会看到输出。tail 命令的 -f 选项表示随着文件的增长,输出会被追加。
答案2
尽管 Q 说你没有 GUI,但显然你有一个桌面和 gnome-terminal,所以我假设你也安装了 zenity(它在 Ubuntu 中默认存在),因此你可以让 zenity 显示来自命令或整个脚本的输出,如下所示:
script_output=$(script.sh)
zenity --info --title="Output of script" --text="$script_output"
它将标准输出(不包括 stderr,如果需要,您也可以将其重定向到 stdout)保存到一个变量,然后让 zenity 打开一个窗口,在类似于此图像的框中显示输出(但标题和内容不同),该窗口将一直保持显示直到您按下确定。
答案3
您可以打开一个新的终端窗口并在其中运行命令,例如xterm
:
xterm -hold -e 'whoami'
该-hold
选项让窗口保持打开状态,如果希望它在进程退出时立即自动关闭,请删除它。您还可以使用sleep
它让它在退出后保持打开一段定义的时间,例如xterm -e 'whoami;sleep 2'. The part after
-e` 是在新终端窗口中执行的命令或命令列表。这必须是命令行中的最后一个选项。请注意,如果您不告诉它这样做,它不会运行 shell。
大多数其他终端仿真器具有相同或类似的选项,例如
gnome-terminal -e 'whoami'
如果没有与 标志等效的xterm
标志,-hold
您可以启动一个 shell 来保持窗口保持打开状态:
xterm -e 'whoami;bash'