![如何在Linux中识别应用程序是使用终端还是Xwindows](https://linux22.com/image/216608/%E5%A6%82%E4%BD%95%E5%9C%A8Linux%E4%B8%AD%E8%AF%86%E5%88%AB%E5%BA%94%E7%94%A8%E7%A8%8B%E5%BA%8F%E6%98%AF%E4%BD%BF%E7%94%A8%E7%BB%88%E7%AB%AF%E8%BF%98%E6%98%AFXwindows.png)
是否可以识别应用程序/程序是在终端还是在 Xwindows 窗口中运行?我想创建我中继命令的脚本,如果需要,它会在终端中运行此命令,或者如果不需要,它会直接运行。
细节:
我的灵感来自于这个reddit我编写了这个脚本:
#!/bin/zsh
# fzfmenu
kitty zsh -c "fzf $* < /proc/$$/fd/0 > /proc/$$/fd/1"
#!/bin/zsh
# fzflauncher
list=(`echo ${PATH//:/ }`)
exec=()
for dir in $list; do
exec+=$(ls $dir)
done
exec `print $exec | fzfmenu`
fzflauncher
在所有可执行文件中查找并启动其中一个。如果我选择例如终端游戏bombardier
,程序在没有终端的情况下运行(我不知道这怎么可能)并且占用 100%CPU。