Precedente :: Successivo |
Autore |
Messaggio |
reny Semidio
Registrato: 30/10/07 21:49 Messaggi: 280
|
Inviato: 07 Ott 2014 17:39 Oggetto: Xubuntu 14.04,come impostare...il tempo in uno script |
|
|
Ciao,pardon ma propio un titolo migliore non mi veniva.
In Ubuntu utilizzavo qualche semplice script per aggiornare o pulire il sistema,oppure per ritardare l'avvio di conky all'accensione del pc.
Gli stessi script non funzionano allo stesso modo con Xubuntu.ma non capisco dove sbaglio.Ad esempio se provo "sudo apt-get update -y"seguito da "sleep 10"e poi "exit"il comando viene eseguito ma il terminale non si chiude mai(con Ubuntu trascorsi i 10 secondi si chiudeva da solo.La stessa cosa se metto conky all'avvio del sistema,anche se gli do un tempo per avviarsi quella bestiaccia continua a fare di testa sua e parte subito.
Non credo di avere spaventato lo script che quindi subito esegue
Suggerimenti? |
|
Top |
|
|
MK66 Moderatore Sistemi Operativi
Registrato: 17/10/06 22:24 Messaggi: 8616 Residenza: dentro una cassa sotto 3 metri di terra...
|
Inviato: 07 Ott 2014 22:50 Oggetto: |
|
|
Ciao
Dipende da come scrivi gli script
Per esempio, il mio script per avviare conky è il seguente:
Codice: | #!/bin/sh
sleep 15
conky -d -c ~/.conkyrc
exit |
e conky parte dopo 15 secondi senza problemi
Per quanto riguarda il comando da terminale, come lo scrivi?
Per eseguire un comando al termine di un altro, occorre usare la &&, tanto per restare in tema di esempi sciocchi, questo è un alias che utilizzo da una vita ormai, con qualsiasi versione di Ubuntu/Xubuntu/Debian:
Codice: | alias aggiorna='sudo apt-get update && sudo apt-get upgrade && exit' |
digito "aggiorna", mi chiede la password e poi comincia la fase di aggiornamento, al termine della quale (se non ci sono stati problemi) si chiude il terminale (se ci sono stati problemi, invece, resta aperto e indica cosa non va e, talvolta, come fare per rimediare) |
|
Top |
|
|
reny Semidio
Registrato: 30/10/07 21:49 Messaggi: 280
|
Inviato: 08 Ott 2014 17:14 Oggetto: |
|
|
Ciao MK66,io per conky uso questo script(trovato online)che su ubuntu ha sempre funzionato:
Codice: | #conkystart
sleep 15
if [ pgrep conky ];
then
pkill conky
fi
conky
|
Uno script che uso per pulire il sistema invece:
Codice: | #!/bin/bash
sudo apt-get clean -y
sudo apt-get autoclean -y
sudo apt-get autoremove -y
sleep 10
exit
|
Questo eseguiva i comandi in sequenza ed al termine il terminale si chiudeva da solo.Ubuntu aveva pieta' di me?
Sono sbagliati? |
|
Top |
|
|
MK66 Moderatore Sistemi Operativi
Registrato: 17/10/06 22:24 Messaggi: 8616 Residenza: dentro una cassa sotto 3 metri di terra...
|
Inviato: 08 Ott 2014 18:19 Oggetto: |
|
|
Lo script per conky è corretto (anche se mi pare che manchi la prima riga: #!/bin/sh): termina un eventuale conky presente (anche se nascosto dal desktop) e lo riavvia o lo avvia direttamente dopo 15 secondi.
In ogni caso, dici che il conky ti parte all'avvio e lo script non lo uccide?
La domanda a questo punto è: premesso che la prima riga sia a posto, i permessi sul file di script sono corretti?
Il file di script è inserito tra le applicazioni di avvio del computer?
PS: prova, quando spegni, a disattivare l'opzione di salvare la sessione (se attiva) e dovrebbe quindi evitarti di trovarti in funzione il conky della sessione precedente (che parte all'avvio)
Per quanto riguarda lo script di pulizia, i comandi sono corretti e ciascuno per conto suo funziona correttamente, quindi se nuovamente le questioni dei permessi sono a posto non dovrebbero esserci problemi...
Prova eventualmente ad aggiungere la seguente linea Codice: | echo "Il sistema è stato pulito correttamente!" | prima di sleep 10 e quest'altra Codice: | echo "Ciao, alla prossima!" | subito dopo sleep 10 e prima di exit, volendo prova anche a ridurre il tempo di attesa, da sleep 10 a sleep 3 o 5, per vedere se si pianta da qualche parte o meno: se tutto va come deve, dovresti vedere bene la prima frase (per i famosi 10 secondi) e intravedere per un istante infinitesimo la seconda prima che il terminale si spenga.
In realtà, quest'ultimo, essendo di fatto una pura sequenza di comandi da terminale, lo metterei come alias, scrivendo nel file .bash_aliases i singoli comandi uno dopo l'altro con in mezzo la doppia &&, per esempio:
Codice: | alias pulisci='sudo apt-get clean -y && sudo apt-get autoclean -y && sudo apt-get autoremove -y && sleep 10 && exit' |
A seguire, quando vuoi far pulizia, apri il terminale e digiti il comando pulisci (o l'alias che hai messo) e farà la pulizia |
|
Top |
|
|
reny Semidio
Registrato: 30/10/07 21:49 Messaggi: 280
|
Inviato: 08 Ott 2014 18:37 Oggetto: |
|
|
ok,provo e ti faccio sapere.Lo script per conky è nelle applicazioni d'avvio,ma controllero' i permessi |
|
Top |
|
|
reny Semidio
Registrato: 30/10/07 21:49 Messaggi: 280
|
Inviato: 08 Ott 2014 19:16 Oggetto: |
|
|
Eccomi qui.Avevi ragione,mancava la prima riga per il conky.Inserita non andava.Ho ripulito la cache delle sessioni ed adesso funziona correttamente.Nelle impostazioni non ho salva la sessione all'uscita.
Lo script per la pulizia,invece,è diventato molto piu'...curato,mi piace che mi parli,ma alla fine il terminale non si chiude dopo i 10 secondi.(ho provato anche a ridurli.Ho creato anche un ulteriore script con i comandi in sequenza
ed usando la variabile &&,non ne vuole sapere.
Quando creo uno script gli do i permessi (dopo averli inseriti nella home)con:chmod +x nomescript.sh
Controllando dalla finestra propieta' di questi,i permessi sono :lettura e scrittura,e poi c'e' il flag sulla finestra permetti di eseguire il file come un programma.
MK66 non ho mai creato un alias..... ..ehm una spiegazione in "facilese?" |
|
Top |
|
|
MK66 Moderatore Sistemi Operativi
Registrato: 17/10/06 22:24 Messaggi: 8616 Residenza: dentro una cassa sotto 3 metri di terra...
|
Inviato: 08 Ott 2014 20:31 Oggetto: |
|
|
Citazione: | Lo script per la pulizia,invece,è diventato molto piu'...curato,mi piace che mi parli,ma alla fine il terminale non si chiude dopo i 10 secondi. |
strano...
Prova ancora una cosa...
nella prima riga, al posto di /bash usa /sh, così:
Citazione: | non ho mai creato un alias..... |
non è difficile: apri con l'editor di testo il file nella tua home chiamato .bash_aliases (è un file di testo nascosto, come da punto davanti al nome, se per caso non c'è, crealo, ma in questo caso accertati che nella tua home ci sia il file .bashrc e che in tale file ci sia questa parte Codice: | # Alias definitions.
# You may want to put all your additions into a separate file like
# ~/.bash_aliases, instead of adding them here directly.
# See /usr/share/doc/bash-doc/examples in the bash-doc package.
if [ -f ~/.bash_aliases ]; then
. ~/.bash_aliases
fi | e che sia proprio come te l'ho indicata qua, ovvero senza commenti # nella sezione if ... fi) e ci copi dentro il comando che ti ho scritto sopra:
Codice: | alias pulisci='sudo apt-get clean -y && sudo apt-get autoclean -y && sudo apt-get autoremove -y && sleep 10 && exit' |
esattamente come scritto (ovviamente puoi cambiare il nome pulisci con quello che preferisci te, ricorda solo che sarà il tuo alias, ovvero il comando che darai per effettuare la sequenza completa, quindi scegli qualcosa facile da ricordare/interpretare/scrivere: quando ci prendi gusto, potrai creare centinaia di alias per semplificare comandi complessi, quindi usare nomi facili da tenere a mente e veloci da scrivere è utilissimo )
Salvi, chiudi e da quel momento puoi usare il tuo alias dal terminale, digitando il comando che hai scelto (nel mio esempio, digiti pulisci) e il terminale ripeterà automaticamente la serie di comandi corrispondenti |
|
Top |
|
|
reny Semidio
Registrato: 30/10/07 21:49 Messaggi: 280
|
Inviato: 08 Ott 2014 21:21 Oggetto: |
|
|
Anche cambiando la scritta in il terminale non si chiude dopo i 10(ma anche 100.000)secondi.
Funziona egregiamente invece il tuo alias
Mi preoccupo per questo? Ho finalmente un ambiente che inizia a piacermi mi seccherebbe dover reinstallare il sistema.
Mi stuzzicano gli alias.Per cosa conviene usarli?Quando possono sostituire gli script?
Il file .bash_aliases non c'era è normale?
Scusa per le troppe domande e grazie.
Ciao. |
|
Top |
|
|
MK66 Moderatore Sistemi Operativi
Registrato: 17/10/06 22:24 Messaggi: 8616 Residenza: dentro una cassa sotto 3 metri di terra...
|
Inviato: 08 Ott 2014 21:55 Oggetto: |
|
|
Citazione: | il terminale non si chiude dopo i 10(ma anche 100.000)secondi |
...non ho idee...
Citazione: | Mi preoccupo per questo? Ho finalmente un ambiente che inizia a piacermi mi seccherebbe dover reinstallare il sistema. |
reinstallare perchè non funziona uno script? per giunta uno script che userai al massimo una volta ogni 3 mesi?
Citazione: | Mi stuzzicano gli alias.Per cosa conviene usarli?Quando possono sostituire gli script? |
sono comodissimi per sostituire i comandi di terminale che utilizzi maggiormente, ma che talvolta sono lunghi da scrivere e possono farti incorrere in errore (prendi il mio comando aggiorna di sopra: non fa altro che dare la sequenza classica di sudo apt-get update e sudo apt-get upgrade, ma è molto più semplice scrivere aggiorna che scrivere uno per volta i due comandi )
Per esempio, noterai che nella tua home c'è anche, tra i file nascosti, bash_history: è la cronologia del tuo terminale, con gli ultimi comandi che hai dato. Potrebbe essere un buon punto di partenza per vedere quelli che usi di più e scegliere quindi quali comandi puoi tramutare in alias (la procedura è sempre la stessa, inserisci nel file che hai creato i tuoi alias, uno per riga, nel formato Codice: | alias NOME_ALIAS='COMANDI_DA_TRAMUTARE_IN_ALIAS' |
NOME_ALIAS è il nome del tuo alias
COMANDI_DA_TRAMUTARE... è la sequenza di comandi (anche uno solo, ovviamente) da tramutare in alias
prima e dopo il segno = non ci vanno spazi, e la sequenza di comandi (o il comando) è da racchiudere tra apici ' '
Di fatto non sono script, ma ti possono automatizzare operazioni ripetitive, mentre gli script sono talvolta veri esempi di programmazione, e talvolta semplici sequenze di comandi bash ripetuti.
Citazione: | Il file .bash_aliases non c'era è normale? |
si, se non hai mai creato alias non c'era, ci ho pensato un attimo prima di inviare il messaggio precedente e ti ho aggiunto le indicazioni in merito, quanto pare ho fatto bene |
|
Top |
|
|
reny Semidio
Registrato: 30/10/07 21:49 Messaggi: 280
|
Inviato: 09 Ott 2014 18:32 Oggetto: |
|
|
Grazie per le dritte.Tentero' di farle fruttare
Ciao. |
|
Top |
|
|
|
|
Non puoi inserire nuovi argomenti Non puoi rispondere a nessun argomento Non puoi modificare i tuoi messaggi Non puoi cancellare i tuoi messaggi Non puoi votare nei sondaggi
|
|