Переглядаючи статті Ubuntu в Інтернеті, я натрапив на цю команду:
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
Автор сказав, що це однорядкова команда, яка видалить усі попередні версії Linux, залишивши лише поточну !
Я насправді шукаю таку команду, але я не дуже впевнений, наскільки це безпечно. Я хотів би знати:
- Чи безпечно виконувати цю команду?
- Як працює ця команда? тобто пояснення малих частин такої великої команди
- Якщо ця команда служить якійсь іншій меті, то яка б була правильна команда для досягнення того, що автор вимагає зробити?
Мені стає дуже розгублено і розчаровано, коли я намагаюся зробити все самі. Як ця команда працюватиме на ньому численні /
, |
, \
, *
, і ^
символи , які важко Google для.
Я шукаю покроковий переклад та пояснення цієї команди, яку мені не вдалося знайти в Інтернеті!
apt-get autoremove
не пропонує мені видаляти старіші ядра. Якщо я не видалю їх, вони просто збиратимуться, поки моє не залишиться /boot
місця та оновлення не завершиться. Чи є у вас посилання на те, що це має робити?
s/^[^ ]* [^ ]* \([^ ]*\).*/\1/
замість просто s/^[^ ]* \([^ ]*\).*/\1/
. Сценарій не дуже надійний або елегантний. Наприклад, навіщо перевіряти поточне ядро перед вилученням імені пакета з виводу? Що стосується альтернативи, sudo apt-get autoremove --purge
очищає найдавніші ядра в останній версії Ubuntu, як Xubuntu 15.10.