Chcel som napísať skript ktorý pustí v screen 3 okná a v každom otvorí bash
mám prvý súbor startup.script
screen -dm bash -l /home/user/startup.script.screen
a druhý súbor startup.script.screen
sleep 10
screen -p - bash
screen -p - bash
bash
Ale pokiaľ spustím sh startup.script a počkám 10 sekúnd čo tam je ten sleep a pripojím sa na screen cez screen -r, tak v screene je len jedno okno a nie tri.
Ale pokiaľ spustím sh startup.script a nepočkám tých 10 sekúnd a hneď sa zapojím cez screen -r, tak nabehnú poriadne tri okná a v každom je bash. Prečo je to tak ? Čo je to za haluz ? Ako to spravím tak, že ten príkaz pustím a budem si môcť byť istý, že tam nabehlo všetko ?
A ďalšia vec, pokiaľ posledný príkaz bash nahradím príkazom mc tak mc sa spustí ale bez farieb a to vždy, aj keď sa zapojím heď a aj keď čakám 10 sekúnd. Prečo ? Nesúvisí to nejak spolu ? Ale pokiaľ otvorím dalšie okno cez ctrl+a +c tak tam už môžem spustiť mc a nabehne s farbami.
Mám dva súbory startup.script a startup.script.screen
a:
1. $sh startup.script
2. počkám 10 sekúnd
3. $screen -r
4. v screene je len jedno bash okno
alebo
1. $sh startup.script
3. $screen -r
4. v screene nabehnú všetky tri okná a v nich sa spustí bash
a vždy keď v hociakom s tých oknien spustím mc tak je bez farieb,
ale pokiaľ otvorím nové okno cez ctrl+a+c a v ňom spustím mc tak tam už nabehne mc farebne.
screen -ls
No Sockets found in /var/run/screen/S-menopouzivatela.
Spravým test a zavriem.
Debian stable
$uname -a
Linux ds 2.6.26-2-686 #1 SMP Thu Nov 25 01:53:57 UTC 2010 i686 GNU/Linux
$ screen -ls
No Sockets found in /var/run/screen/S-meno.
$ sh startup.script
$ screen -ls
There is a screen on:
6151..ds (01/24/2011 11:05:17 PM) (Detached)
1 Socket in /var/run/screen/S-meno.
Ale, to bude tym ze nemam system v Bukuresti.
dal som preč sleep a nič
dal som preč posledný 0 terminálový prikaz a screen sa vypol :D
ja som zapojený cez ssh na ten cieľový pc, nemohlo by to byť tým ? ale to je pi...
Ja viem, že sa to malo vypnúť, ináč skúšal som tam dať nejaké to echo "aaa" a vpohode to tam vypísalo a nahodil sa 0.bash
Udelej ~/.screenrc a v nem (analogicky):
screen -t 'bash' 0 bash
screen -t 'shell' 1 sh
screen -t 'ssh' 2 ssh root@machine