Jawaban:
Anda dapat melakukan sesuatu seperti ini:
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
Catatan:
grep
keluar dengan sukses jika menemukan kecocokan!
meniadakan ini, jadi perintah akan dieksekusi jika tidak ada kecocokan = ppa tidak ditambahkan-q
bendera membuat grep
tenang , sehingga tidak mencetak garis cocok. Itu hanya akan berisik, kita hanya perlu tahu apakah ada kecocokan atau tidak, yang kode keluarnya sempurna^deb .*
prefix adalah untuk memastikan garis cocok dimulai dengan deb
, untuk mengecualikan garis yang komentarBuka terminal Anda dan ketik perintah ini
grep ^ /etc/apt/sources.list /etc/apt/sources.list.d/* | grep fogger
ganti fogger dengan nama PPA.
Menghapus file list.save, sumber, pastikan hanya baris deb dan hitung untuk "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
baris yang dikomentari, dimulai dengan # deb
, dan baris dari file seperti foo-ppa.list.distUpgrade
- apakah itu dimaksudkan?