Risposte:
Puoi fare qualcosa del genere:
the_ppa=... # e.g. the_ppa="ondrej/apache2"
if ! grep -q "^deb .*$the_ppa" /etc/apt/sources.list /etc/apt/sources.list.d/*; then
# commands to add the ppa ...
fi
Appunti:
grep
esce correttamente se trova una corrispondenza!
nega questo, quindi i comandi vengono eseguiti se non esiste alcuna corrispondenza = ppa non aggiunto-q
bandiera diventa grep
silenziosa , quindi non stampa le linee abbinate. Sarebbe solo rumore, dobbiamo solo sapere se c'è una corrispondenza o meno, per cui il codice di uscita è perfetto^deb .*
prefisso è assicurarsi che la riga corrispondente inizi con deb
, per escludere le righe commentateApri il tuo terminale e digita questo comando
grep ^ /etc/apt/sources.list /etc/apt/sources.list.d/* | grep fogger
sostituire il nebulizzatore con il nome PPA.
Rimozione di list.save file, fonti, assicurare solo le linee deb e contarlo per "fogger" ppa:
ppa_added=`grep ^ /etc/apt/sources.list /etc/apt/sources.list.d/* | grep -v list.save | grep -v deb-src | grep deb | grep fogger | wc -l`
echo $ppa_added
deb
righe che sono commentate, a partire da # deb
, e le righe da file come foo-ppa.list.distUpgrade
- è previsto?