Nel prossimo articolo daremo un'occhiata a un'utilità chiamata Undistract-me. Questo script noi mostrerà un avviso quando i comandi saranno completati che stiamo eseguendo in terminale. Questo può essere utile quando dopo aver lanciato un comando iniziamo a lavorare su qualcos'altro. Con esso non avremo bisogno di controllare costantemente il terminale per vedere se il comando è stato completato o meno. L'utilità Undistract-me ci avviserà quando viene completato un comando di lunga durata. Funzionerà su Arch Linux, Debian, Ubuntu e altri derivati.
Questa utility tornerà utile quando non sei abbastanza disciplinato da sederti e guardare i comandi eseguiti. Lo script noi visualizza un prompt sul desktop al termine dei comandi di lunga durata, in modo che possiamo dedicare il nostro tempo a qualcosa di diverso dal guardare il terminale mentre i comandi arrivano alla fine.
Installa Undistract-me
Undistract-me lo è disponibile nei repository Debian predefiniti e nelle loro varianti, come Ubuntu. L'ho testato su Ubuntu 17.10. Chi lo desidera può consultare il codice sorgente di questo script nella pagina di GitHub il progetto.
Per aggiungerlo al tuo sistema, tutto ciò che devi fare è eseguire il seguente comando nel terminale (Ctrl + Alt + T) per installarlo:
sudo apt install undistract-me
Al termine dell'installazione, nello stesso terminale, eseguire il seguente comando su aggiungi "undistract-me" al tuo bash:
echo 'source /etc/profile.d/undistract-me.sh' >> ~/.bashrc
In alternativa, puoi eseguire questo comando per aggiungerlo al tuo Bash:
echo "source /usr/share/undistract-me/long-running.bash\nnotify_when_long_running_commands_finish_install" >> .bashrc
Infine aggiornare le modifiche in esecuzione nello stesso terminale:
source ~/.bashrc
Configura Undistract-me
Modifica l'ora della notifica
Per impostazione predefinita, Undistract-me considererà qualsiasi comando che impiega più di 10 secondi per essere completato come un comando a esecuzione prolungata. Ma questo può essere cambiato. Questo intervallo di tempo può essere modificato modificando il file /usr/share/undistract-me/long-running.bash.
sudo nano /usr/share/undistract-me/long-running.bash
All'interno del file dovremo trovare la variabile "LONG_RUNNING_COMMAND_TIMEOUT" e cambia il file predefinito (10 secondi) per un altro valore a tua scelta. Quindi salva e chiudi il file. Non dimenticare di aggiornare le modifiche eseguendo il comando:
source ~/.bashrc
Abilita / disabilita le notifiche per comandi particolari
Inoltre, saremo in grado di disabilitare le notifiche per comandi particolari. Per fare ciò, dovremo cercare la variabile "LONG_RUNNING_IGNORE_LIST" e aggiungi il file comandi da influenzare separati da spazi.
Abilita / disabilita il controllo della finestra attiva
Per impostazione predefinita, la notifica verrà visualizzata solo se la finestra attiva non è la finestra in cui viene eseguito il comando. Ciò significa che riceveremo la notifica solo se il comando è in esecuzione nella finestra in background. Se il comando viene eseguito nella finestra attiva, la notifica non verrà visualizzata. Se vogliamo che venga fatta questa distinzione, saremo in grado di configurare IGNORE_WINDOW_CHECK. Selezioneremo 1 per saltare il controllo della finestra.
Abilita la notifica audio
L'altra caratteristica interessante di Undistract-me è quella puoi impostare la notifica audio insieme alla notifica visiva quando un comando viene completato. Per impostazione predefinita, invierà solo una notifica visiva. È possibile modificare questo comportamento impostando la variabile UDM_PLAY_SUONO en un numero intero diverso da zero Sulla linea. Tuttavia, il nostro sistema Ubuntu deve avere le utilità Pulseaudio-utils y desktop senza temi sonori installato per abilitare questa funzionalità.
Ricorda che devi eseguire il seguente comando per aggiornare le modifiche apportate:
source ~/.bashrc
Testare Undistract-me
È ora di verificare se funziona davvero e vediamo se la notifica viene visualizzata quando vengono completati i comandi del terminale a lunga esecuzione. Adesso corri qualsiasi comando che richieda più di 10 secondi o il periodo di tempo in cui hai definito la configurazione Undistract-me.
Per questo esempio, eseguo semplicemente il ping di uno dei router sulla mia rete un numero di volte specificato. Questo comando ha richiesto circa 25 secondi per essere completato. Dopo aver completato il comando, ho ricevuto la seguente notifica sul desktop.
Ricorda che lo script Undistract-me segnala solo se il comando dato ha impiegato più di 10 secondi per essere completato e il terminale in cui è in esecuzione non è la finestra attiva. Se il comando viene completato in meno di 10 secondi, non sarai avvisato. Ovviamente, puoi modificare questa impostazione dell'intervallo di tempo come descritto nella sezione Impostazioni.
Trovo questo strumento molto utile per tutti noi che lavoriamo al terminal. Ed essendo così facile da usare e da installare, penso che sia qualcosa che non dovrebbe mancare su nessun computer.
Questo ha un sistema operativo elementare ed è fantastico