Portál AbcLinuxu, 12. května 2025 04:15
[...] skript, ktory spustim cez cron alebo rovno startovaci skript by to bol, a otvoril by screenMísto cron-u by byl asi vhodnější .bash_profile (obsah se spouští jen s login shellem) nebo .bashrc (spouští se s interaktivním shellem), ovšem je vhodné doplnit o test, zda screen již neběží, aby se eliminovalo opětovné spuštění. Pak se screen zavolá v "detached" mode (viz man screen pro příslušné parametry). Při vlastní práci se k němu jen připojíš z terminálu.
[...] a v nom mi pootvaral nove taby aj s nejakym pomenovanim, nechcem to vsak riesit tak ze si to natvrdo urcim v screene, tak to viem, ale ked chcem napriklad zo suboru tahat serveri a pomocou klucov mi otvori session aj bez hesla a pomenuje mi screen tab na patricne meno podla servera.Tohle si jednoduše vyjmenuješ do souboru .screenrc a pak se to bude spouštět automaticky. Lze nastavit, do kterého okna se má která aplikace otevřít, včetně pojmenování tabu, opět viz man screen.
A este ak viete poradit dobru knihu pre bash scripting je ich vela, ale chcem nieco s prikladmi hoci aj v anglictine :)Advanced Bash Scripting Guide obsahuje samé příklady a je dostupný na tldp.org
ls -l ~/.screenrc.d/*/* session-1/screen-01 session-1/screen-02 session-1/screen-03 session-2/screen-01z takejto šturktúry ľahko vygeneruješ príslušný .screenrc. Na meno tabu používam:
cat set_screen_name #!/bin/bash echo -ne '\ek'"$1"'\e\\'
Tak tohle je prvni nastrel ("servers" je konfigurak se servrama - jeden na radek, "open.sh" je skript co cele pusti):
$ cat servers root@server1 root@server2 root@server3 root@server4 $ cat open.sh #!/bin/bash CONFIG="servers" echo "Reading configuration from $SERVERS" SERVERS=`cat $CONFIG` SCREEN_CONFIG=`mktemp` for SERVER in $SERVERS; do echo "Adding screen for server '$SERVER'" echo "screen ssh $SERVER" >> $SCREEN_CONFIG echo "title \"Server $SERVER\"" >> $SCREEN_CONFIG done echo "Launching screen..." screen -c $SCREEN_CONFIG echo "Deleting temporary config $SCREEN_CONFIG" rm $SCREEN_CONFIG
Tiskni
Sdílej:
ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.