เหตุใดจึงต้องใช้คำสั่ง apt-get --purge ทำการลบมากกว่า apt-get purge ใน Linux?


19

apt-get --purge remove {package_name}ฉันได้รับการถอนการติดตั้งการใช้งานเช่นเดียวกับการลบหรือล้างแฟ้มการกำหนดค่าของตนโดยใช้คำสั่ง

ฉันได้เจอหลายโพสต์ในเน็ตรวมทั้งคู่มือของ Ubuntu ที่https://help.ubuntu.com/community/AptGet/Howtoที่อ่านเมื่อเพียงแค่ใช้คำสั่ง"This command completely removes a package and the associated configuration files. Configuration files residing in ~ are not usually affected by this command"apt-get purge {package_name}

มีความแตกต่างในการทำงานคำสั่งapt-get --purge remove {package_name}และapt-get purge {package_name}? ทำไมคุณถึงใช้อันอื่น?

คำตอบ:


25

คำสั่งapt-get --purge removeมีมาตั้งแต่ APT ถูกเพิ่มไปยัง Debian และเคยเป็นวิธีเดียวที่จะกำจัดแพ็คเกจด้วย apt อย่างสมบูรณ์ คำสั่ง apt-get purgeถูกเพิ่มเข้ามาในไม่กี่ปีที่ผ่านมาตัวเลือกเก่าไม่ได้ถูกลบออกและยังมีเอกสารจำนวนมากที่แสดงไวยากรณ์ที่เก่ากว่า พวกเขาทำสิ่งเดียวกัน

ฉันมักจะยังคงใช้คำสั่งที่ยาวกว่าapt-get --purge removeเพียงเพราะฉันใช้มันบ่อยขึ้นและลืมไปว่ารุ่นที่สั้นกว่านี้มีให้ใช้แล้ว

สิ่งที่มีประโยชน์อื่น ๆ หนึ่งที่จะเก็บไว้ในใจก็คือ--purgeตัวเลือกที่สามารถนำมาใช้กับและมีไม่เทียบเท่าapt-get autoremove apt-get autopurgeดังนั้นหากคุณใช้apt-get autoremoveตัวเลือกในการลบแพ็คเกจที่ติดตั้งโดยอัตโนมัติคุณจะมี crufty configs เก่าจำนวนมากจากแพ็คเกจเหล่านั้นเนื่องจากคุณเพิ่งลบมันออกไป


2
คุณสามารถล้างข้อมูลออกจากแพ็คเกจที่ถูกลบโดยใช้dpkg -l | grep '^rc' | awk '{print $2}' | xargs dpkg --purge(คำสั่งจากhelp.ubuntu.com/community/AptGet/Howto )
etam1024

@ etam1024 แน่ใจและมีวิธีอื่นด้วย ข้างต้นเพียงกล่าวถึงวิธีการที่จะทำได้ในการดำเนินการเดียวกับ autoremove
Zoredache

ฉันไม่คิดว่าคุณเข้าใจ ดังที่คุณเขียน autoremove จะลบแพ็คเกจ แต่ "คุณจะมี crufty configs เก่าจำนวนมากจากแพ็คเกจเหล่านั้นเนื่องจากคุณเพิ่งลบมันออก" คำสั่งที่ฉันวางลบไฟล์เหล่านั้น ดังนั้นคำสั่งapt-get autoremoveและคำสั่งที่รวมเข้าด้วยกันในลำดับนี้จึงมีลักษณะเหมือนการป้อนอัตโนมัติ
etam1024
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.