GNU/Linux >> Linux Esercitazione >  >> Linux

Creazione di uno script per mostrare una notifica quando sono disponibili aggiornamenti?

Sto cercando di creare uno script da eseguire con crontab in cui se sono disponibili aggiornamenti, lo script invierà una notifica. Lo script stesso non mi dà errori, tuttavia nell'istruzione if funziona solo la parte "else". Qualche idea?

#!/bin/bash
sudo apt update > ~/Desktop/UpdateInfo

update1=$(grep "package can be upgraded" ~/Desktop/UpdateInfo | cut -d' ' -f2,3,4,5)

var1="package can be upgraded."

if [ var1 = update1 ]
    then
        notify-send "Updates are available"
    else
        notify-send "test"
fi

Risposta accettata:

Stai confrontando la stringa var1 alla stringa update1 . Quelli non saranno mai più gli stessi. Vuoi invece confrontare le variabili:

if [ "$var1" = "$update1" ]

Naturalmente, l'intera cosa potrebbe essere semplificata in:

sudo apt update | grep -q "package can be upgraded" && notify-send "Updates are available"

Linux
  1. Un modo per sincronizzare la struttura delle directory quando i file sono già su entrambi i lati?

  2. Ci sono effetti collaterali quando due distribuzioni condividono una partizione di scambio?

  3. Come impostare i parametri quando Pipe Bash Script su Bash?

  4. Script per determinare se i file sono immagini?

  5. Etichetta disco non riconosciuta durante la creazione della partizione

Usa questo utile script Bash quando osservi le stelle

Ricevi una notifica quando viene eseguita un'attività terminale

Rsync Mostra la barra di avanzamento durante la copia di file in Linux

Come mostrare la notifica quando viene inserito un dispositivo USB?

C'è un modo per mostrare la notifica dallo script bash in Ubuntu?

Quali applicazioni di editing video sono disponibili in Linux?