उबंटू लेखों के लिए इंटरनेट ब्राउज़ करते समय, मैं इस कमांड में आया:
sudo dpkg -l 'linux-*' | sed '/^ii/!d;/'"$(uname -r | sed "s/\(.*\)-\([^0-9]\+\)/\1/")"'/d;s/^[^ ]* [^ ]* \([^ ]*\).*/\1/;/[0-9]/!d' | xargs sudo apt-get -y purge
लेखक ने कहा कि यह एक एकल पंक्ति कमांड है जो लिनक्स के सभी पिछले संस्करणों को हटा देगा , केवल वर्तमान एक को छोड़कर !
मैं वास्तव में इस तरह के कमांड की तलाश कर रहा हूं, लेकिन मुझे इस पर यकीन नहीं है कि यह कितना सुरक्षित है। मैं जानना चाहता हूं:
- क्या इस कमांड को निष्पादित करना सुरक्षित है?
- यह कमांड कैसे काम करता है? यानी इतने बड़े कमांड के छोटे हिस्से की व्याख्या
- यदि यह कमांड कुछ अलग उद्देश्य प्रदान करता है, तो लेखक क्या करने का दावा करता है, इसे प्राप्त करने के लिए सही कमांड क्या होगा?
मैं बहुत भ्रमित हो जाता हूं और निराश हो जाता हूं जब मैं अपने आप को जानने की कोशिश करता हूं। कैसे इस आदेश काम करता है उसमें शामिल करने के लिए कई /
, |
, \
, *
, और ^
वर्ण जिनके लिए Google के लिए कड़ी मेहनत कर रहे हैं।
मैं इस कमांड के लिए स्टेप ट्रांसलेशन और स्पष्टीकरण के लिए एक कदम की तलाश कर रहा हूं, जिसे मैं इंटरनेट पर नहीं पा रहा था!
apt-get autoremove
मेरे लिए पुराने गुठली के किसी भी हटाने का सुझाव नहीं देता है। अगर मैं उन्हें नहीं हटाता हूं, तो वे तब तक ढेर करेंगे जब तक कि मेरा /boot
स्थान खाली न हो जाए और अपडेट विफल रहे। क्या आपके पास इसके बारे में कोई संदर्भ है कि इसे ऐसा करना चाहिए?
s/^[^ ]* [^ ]* \([^ ]*\).*/\1/
बस के बजाय क्यों है s/^[^ ]* \([^ ]*\).*/\1/
। स्क्रिप्ट बहुत मजबूत या सुरुचिपूर्ण नहीं है। उदाहरण के लिए आउटपुट से पैकेज का नाम निकालने से पहले वर्तमान कर्नेल की जांच क्यों करें? एक विकल्प के रूप में, sudo apt-get autoremove --purge
उबंटू के कुछ नवीनतम रिलीज में सबसे पुरानी गुठली को शुद्ध करता है जैसे कि ज़ुबांटा 15.10।