screen-users
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Screen staying alive after ctrl+c-ing its initial task


From: Andrey Utkin
Subject: Re: Screen staying alive after ctrl+c-ing its initial task
Date: Wed, 13 Feb 2013 11:11:37 +0200

2013/2/12 Philipp Haselwarter <address@hidden>:
> Here's a little script that does what you want.
>
> There are two issues with "screen -d -m ":
> - it double-forks, so the created session's pid can't be
>   captured
> - it might exit before the new session is ready
>
> Therefore I had to resort to forking with -D and polling.
>
>
> --8<---------------cut here---------------start------------->8---
> #!/bin/sh
> # args: $1 : session-name, $2 : shell command to run
> session=$1
> screen -c /dev/null -S $session -D -m &
> session="${!}".$session
> until screen -c /dev/null -S $session -X echo ''; do sleep 0.1; done
> screen -c /dev/null -S $session -X stuff "$2\015"
> --8<---------------cut here---------------end--------------->8---

Thanks for reply, your post is very interesting.
But proposed code does not work correctly for me:
i try this in shell:
screen -c /dev/null -S test -D -m bash -i & until screen -c /dev/null
-S test -X echo '' &>/dev/null; do echo .; sleep 0.1; done; screen -c
/dev/null -S test -X stuff 'sleep 10\015'

'sleep 10' command seems to be not executed (not seen in ps axf)
doing further 'screen -r test' gives me unusable shell.

-- 
Andrey Utkin



reply via email to

[Prev in Thread] Current Thread [Next in Thread]