Gentoo Forums
Gentoo Forums
Gentoo Forums
Quick Search: in
Batch in linux
View unanswered posts
View posts from last 24 hours
View posts from last 7 days

 
Reply to topic    Gentoo Forums Forum Index Forum italiano (Italian)
View previous topic :: View next topic  
Author Message
patrick666
n00b
n00b


Joined: 22 Oct 2006
Posts: 29

PostPosted: Mon Jan 19, 2009 1:09 pm    Post subject: Batch in linux Reply with quote

Ho il seguente problema ......

Ho la necessità di lanciare una spece di bath che mi avvi due programmi.
Ho creato un file avvio.sh e gli ho dato diritti di lettura e scrittura.
Al suo interno cerco di avviare due programmi, in questo modo:

Code:


/usr/progs/prog1
/usr/progs/prog2




La cosa strana è che lo script viene eseguito e il prog1 viene lanciato, mentre il prog2 rimane nel dimenticatoio.
Perchè avviene questo?
C'è un metodo diverso per fare quello che ho tentato?


Grazie anticipatamente.
Back to top
View user's profile Send private message
lucapost
Veteran
Veteran


Joined: 24 Nov 2005
Posts: 1415
Location: <ud|me|ts> - Italy

PostPosted: Mon Jan 19, 2009 1:28 pm    Post subject: Re: Batch in linux Reply with quote

Code:

/usr/progs/prog1 &
/usr/progs/prog2 &

prova così.
_________________
LP
Back to top
View user's profile Send private message
randomaze
Bodhisattva
Bodhisattva


Joined: 21 Oct 2003
Posts: 9985

PostPosted: Mon Jan 19, 2009 1:31 pm    Post subject: Re: Batch in linux Reply with quote

patrick666 wrote:
La cosa strana è che lo script viene eseguito e il prog1 viene lanciato, mentre il prog2 rimane nel dimenticatoio.
Perchè avviene questo?


per quello che hai scritto prog2 dovrebbe partire al termine di prog1 (se hai bisogno che siano entrambi attivi devi lanciare prog1 in background...).
_________________
Ciao da me!
Back to top
View user's profile Send private message
riverdragon
Veteran
Veteran


Joined: 14 Sep 2006
Posts: 1269
Location: Verona

PostPosted: Mon Jan 19, 2009 4:00 pm    Post subject: Reply with quote

In linux (bash) una riga viene interpretata e il comando eseguito quando il comando alla riga precedente ha terminato l'esecuzione, a meno di specificare diversamente (il carattere &); in windows succede il contrario.
Back to top
View user's profile Send private message
patrick666
n00b
n00b


Joined: 22 Oct 2006
Posts: 29

PostPosted: Wed Jan 21, 2009 8:23 am    Post subject: Reply with quote

Lanciando lo script come da voi consigliato manualmente, funziona correttamente,
Invece, lanciandolo automaticamente con wicd manager non funziona.

Ho anche provato lo script seguente che risulta essere eseguito parzialmente:

Code:

mkdir /home/UTENTE/aaa
/usr/progs/prog1 &
mkdir /home/UTENTE/bbb
/usr/progs/prog2 &


Mi spiego meglio: le due cartelle con l' mkdir vengono create, mentre gli eseguibili non vengono affatto lanciati!

Ho inoltre controllato con:

Code:

# ps -A | grep prog1
# ps -A | grep prog2


Non ho trovato nessun processo interassati.
Back to top
View user's profile Send private message
djinnZ
Advocate
Advocate


Joined: 02 Nov 2006
Posts: 4831
Location: somewhere in L.O.S.

PostPosted: Wed Jan 21, 2009 1:23 pm    Post subject: Reply with quote

meglio (mkdir vattelappesca ; comando) & o usare un blocco...
_________________
scita et risus abundant in ore stultorum sed etiam semper severi insani sunt:wink:
mala tempora currunt...mater stultorum semper pregna est :evil:
Murpy'sLaw:If anything can go wrong, it will - O'Toole's Corollary:Murphy was an optimist :wink:
Back to top
View user's profile Send private message
asad06
n00b
n00b


Joined: 21 Jan 2009
Posts: 2

PostPosted: Wed Jan 21, 2009 4:05 pm    Post subject: Reply with quote

Quote:
meglio (mkdir vattelappesca ; comando) & o usare un blocco...


Scusate sono nuovissimo di questo mondo e anche io ho lo stesso identico problema,
per riprendere l'esempio postato da patrick666, modificandolo come da ultimo post, ho provato con:

Code:

#! /bin/sh
(mkdir /home/UTENTE/aaa ; /usr/progs/prog1 ) &
mkdir /home/UTENTE/bbb


Ma continua a non funzionarmi, o meglio, vengono create la prima e la seconda cartella ma il programma non viene avviato.

Ho capito male la risposta?

PS: Per me /usr/progs/prog1 corrisponde a /usr/bin/skype, non so se può essere utile....
Back to top
View user's profile Send private message
djinnZ
Advocate
Advocate


Joined: 02 Nov 2006
Posts: 4831
Location: somewhere in L.O.S.

PostPosted: Wed Jan 21, 2009 5:32 pm    Post subject: Reply with quote

#!/bin/sh e #!/bin/bash non sono la stessa cosa così come (comando ; comando) e {comando ; comando} (il famoso "blocco"), così come . /vattelappesca/script è diverso da /vatellapesca/script con script eseguibile.
Spiegate esattamente quello che volete fare perchè la sfera di cristallo è rotta e comunque il ricorso ad essa fa perder tempo.
Non ho voglia di andarmi a vedere cosa fa wicd manager ma è sicuro che esegue uno script bourne? O ci sono limitazioni come per ppp?
per esempio avere un { . script } dove script contiene a sua volta un {qualcosa} non va.
_________________
scita et risus abundant in ore stultorum sed etiam semper severi insani sunt:wink:
mala tempora currunt...mater stultorum semper pregna est :evil:
Murpy'sLaw:If anything can go wrong, it will - O'Toole's Corollary:Murphy was an optimist :wink:
Back to top
View user's profile Send private message
asad06
n00b
n00b


Joined: 21 Jan 2009
Posts: 2

PostPosted: Thu Jan 22, 2009 1:24 pm    Post subject: Reply with quote

patrick sono riuscito a capire qual'è il problema, non è un problema dello script ma del wicd che parte prima di X. Infatti se fai un ps -A ti puoi notare che il numero di pid di wicd è minore di X quindi non riesce a lanciare i programmi con interfaccia grafica (nel mio caso skype)

Se vuoi puoi provare a killare il processo wicd e a rilanciarlo. Appena rilanciato wicd verranno avviati tutti i programmi del tuo script e verranno create le cartelle aaa e bbb.

Ho chiesto info allo sviluppatore e mi ha detto che potrebbe risolvere con le prossime versioni.

Saluti
Back to top
View user's profile Send private message
randomaze
Bodhisattva
Bodhisattva


Joined: 21 Oct 2003
Posts: 9985

PostPosted: Thu Jan 22, 2009 11:53 pm    Post subject: Reply with quote

asad06 wrote:
patrick sono riuscito a capire qual'è il problema, non è un problema dello script ma del wicd che parte prima di X. Infatti se fai un ps -A ti puoi notare che il numero di pid di wicd è minore di X quindi non riesce a lanciare i programmi con interfaccia grafica (nel mio caso skype)

Se vuoi puoi provare a killare il processo wicd e a rilanciarlo. Appena rilanciato wicd verranno avviati tutti i programmi del tuo script e verranno create le cartelle aaa e bbb.

Ho chiesto info allo sviluppatore e mi ha detto che potrebbe risolvere con le prossime versioni.

Saluti


Ricapitolando il problema non è "batch in linux" (come da titolo) ma "avvio automatico di programmi con wicd" :?:
Perchè nel caso sarebbe opprtuno rinominare il topic.

wicd come viene avviato? Come servizio della macchina oppure in seguito? Perchè nel secondo caso si dovrebbe poter spostare nei files di avvio automatico (credo che ormai tutti i window manager riescano a gestirli... altrimenti c'è sempre l'.xinitrc)
_________________
Ciao da me!
Back to top
View user's profile Send private message
aleph.no-ip.biz
n00b
n00b


Joined: 20 Dec 2008
Posts: 2

PostPosted: Fri Jan 23, 2009 12:04 am    Post subject: Reply with quote

bè, puoi facilmente aggiungere un delay ;) . . per non bloccare l'avvio di wicd puoi usare questo codice
Code:
/usr/bin/nohup /bin/bash -c '( sleep 3; /usr/bin/nohup /usr/bin/programma1 & /usr/bin/nohup /usr/bin/programma2 & )' &
( forse ho esagerato coi nohup :roll: servono per far si che il programma non termini alla chiusura della shell che l'ha lanciato ;) ) .. cambi 3 col tempo da aspettare e programma[12] con i programmi da lanciare ;)
_________________
How can you respect a machine controlled by a mouse?
Back to top
View user's profile Send private message
Display posts from previous:   
Reply to topic    Gentoo Forums Forum Index Forum italiano (Italian) All times are GMT
Page 1 of 1

 
Jump to:  
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum