GNU/Linux >> Linux Esercitazione >  >> Linux

tput:nessun valore per $TERM e nessun errore -T specificato registrato dal processo CRON

Qualcosa nello script chiama tput binario. tput tenta di ispezionare il $TERM variabile per determinare il terminale corrente in modo che possa produrre le sequenze di controllo corrette. Non c'è un terminale quando cron è in esecuzione, quindi ottieni quell'errore da tput .

Puoi assegnare manualmente un TERM value al cron job (probabilmente dumb o qualcosa di simile) o (e questa è probabilmente la soluzione migliore) puoi scoprire cosa sta chiamando tput e rimuovi quella chiamata.


Il demone cron è eseguito dall'utente 'root' nella propria shell. Per impostazione predefinita, cron aggiungerà una mail di sistema inviata all'utente che esegue lo script (ecco perché vedi il mittente come 'root' nella mail di sistema). L'"utente" è l'utente con cui hai effettuato l'accesso quando hai impostato il crontab. La posta conterrà messaggi di console e di errore. Su Ubuntu, il file di posta è visualizzabile in /var/mail/<username> .

Se nessun $TERM variabile è impostata, cron emetterà un tput: No value for $TERM and no -T specified errore nel file di posta. Per interrompere questi errori, imposta $TERM variabile usando TERM=dumb (o un altro terminale disponibile nel tuo sistema, come xterm ) nel crontab. Il toe comando ti mostrerà le definizioni di terminfo sul sistema corrente. Se ti manca quel comando, puoi vedere i dati grezzi in /usr/share/terminfo sulla maggior parte dei sistemi Linux.

Anche se hai interrotto gli errori, potresti comunque ricevere la posta di sistema aggiunta con i messaggi della console. Questo file si riempirà come un registro nel tempo, quindi potresti voler interrompere questi messaggi. Per interrompere la posta del sistema cron, imposta MAILTO variabile usando MAILTO=""

Quindi il tuo crontab potrebbe essere simile a:

MAILTO=""
TERM=xterm

* * * * * sh /path/to/myscript.sh

Puoi visualizzare il crontab (per l'utente con cui hai effettuato l'accesso) con 'crontab -l'.


Linux
  1. 20 Domande e risposte sull'intervista Postfix

  2. Bash For Loop Guida ed esempi

  3. Valore hash diverso creato su Windows, Linux e Mac per la stessa immagine

  4. Come viene calcolata la priorità del processo?

  5. Disattiva i log di errore e di accesso per un host virtuale

3 suggerimenti per il miglioramento delle prestazioni dei processi Linux con priorità e affinità

Spiegazione di Cron Jobs e Crontab su Linux

Imposta Cron Jobs per Linux e 10 migliori strumenti online per Cron Jobs

Come eseguire ed elencare i lavori Cron per un sistema Linux tramite PHP

Bash Shell Script:verifica la presenza di un flag e acquisisci il suo valore

Come ottenere solo l'utente, il pid e il comando eseguito per un processo specifico? (Ubuntu 11.10)