ทำคนรู้วิธีการตรวจสอบว่ามีการเพิ่ม PPA แล้วกับระบบของฉันก่อนที่ฉันจะเพิ่มกับคำสั่งในadd-apt-repositoryshell script
นั่นจะเป็นประโยชน์มาก
ขอบคุณ.
ทำคนรู้วิธีการตรวจสอบว่ามีการเพิ่ม PPA แล้วกับระบบของฉันก่อนที่ฉันจะเพิ่มกับคำสั่งในadd-apt-repositoryshell script
นั่นจะเป็นประโยชน์มาก
ขอบคุณ.
คำตอบ:
คุณสามารถทำสิ่งนี้:
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
หมายเหตุ:
grep ออกด้วยความสำเร็จหากพบการแข่งขัน!ขัดแย้งนี้เพื่อให้คำสั่งจะถูกดำเนินการหากไม่มีการแข่งขัน = ppa ไม่ได้เพิ่ม-qตั้งค่าสถานะทำให้grep เงียบดังนั้นจึงไม่พิมพ์บรรทัดที่ตรงกัน มันจะเป็นเพียงแค่เสียงรบกวนเราต้องการเพียงรู้ว่ามีการแข่งขันหรือไม่ซึ่งรหัสทางออกที่สมบูรณ์แบบ^deb .*คำนำหน้าเพื่อให้แน่ใจว่าเส้นตรงเริ่มต้นด้วยการdebที่จะไม่รวมเส้นที่จะออกความเห็นเปิดเทอร์มินัลของคุณและพิมพ์คำสั่งนี้
grep ^ /etc/apt/sources.list /etc/apt/sources.list.d/* | grep fogger
แทนที่ Fogger ด้วยชื่อ PPA

การลบไฟล์ list.save แหล่งให้แน่ใจว่ามีเพียงบรรทัด deb และนับเป็น "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บรรทัดที่ใส่ความคิดเห็นเริ่มต้นด้วย# debและบรรทัดจากไฟล์เช่นfoo-ppa.list.distUpgrade- มีไว้เพื่ออะไร