我目前正在使用它来启动 mutt
或 irssi
:
urxvt -name Irssi/Mutt screen -r Irssi/Mutt
目前,在使用启动器之前我必须执行以下操作:
screen -S Irssi/Mutt irssi/mutt + Ctrl-a-d
我想做的是:
if [ test_to_see_if_the_screen_exit ] # I need a way to the test
then
urxvt -name Irssi/Mutt -e screen -r Irssi/Mutt
else
create_the_screen_named_Irssi/Mutt_and_detach_it # I need a way to create it
urxvt -name Irssi/Mutt -e screen -r Irssi/Mutt
endif
有人有解决办法吗?
最佳答案
使用screen -list
或screen -ls
显示现有 screen 。
不过,我可能会这样做 if...endif
位:
screen_opts=""
case $(screen -list Irssi/Mutt | awk '/Irssi/{print $NF}') in
*Attached*) ;; # not sure what you would want here,
# but I would probably do 'screen_opts="-x"'...
*Detached*) screen_opts="-r" ;;
*) screen -wipe # if session is dead, clean it up
screen_opts="-S Irssi/Mutt";;
esac
urxvt -name Irssi/Mutt -e screen ${screen_opts}
关于bash - 如何附加 screen session 或创建它?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16591458/