우분투 기사를 인터넷에서 탐색하는 동안이 명령을 보았습니다.
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 버전을 삭제하고 현재 버전 만 남겨 둔다고 말했다 .
실제로 그러한 명령을 찾고 있지만 이것이 얼마나 안전한지 잘 모르겠습니다. 알고 싶습니다 :
- 이 명령을 실행해도 안전한지 여부
- 이 명령은 어떻게 작동합니까? 즉 큰 명령의 작은 부분에 대한 설명
- 이 명령이 다른 목적으로 사용된다면 저자가 주장하는 바를 달성하기위한 올바른 명령은 무엇입니까?
나는 혼자서 모든 것을 추론하려고 할 때 매우 혼란스럽고 좌절합니다. 포함 된이 명령의 작업을 수행하는 방법 많은 /
, |
, \
, *
, 그리고 ^
구글에 어려운 문자.
내가 찾고 있어요 단계 번역 및 설명에 의해 단계 나 인터넷을 통해 찾을 수 없습니다이 명령!
apt-get autoremove
는 이전 커널을 제거하지 않아도됩니다. 삭제하지 않으면 /boot
공간이 부족하고 업데이트가 실패 할 때까지 쌓 입니다. 이 작업을 수행해야한다는 것에 대한 참조가 있습니까?
s/^[^ ]* [^ ]* \([^ ]*\).*/\1/
이 간단 하지 않은지 모르겠습니다 s/^[^ ]* \([^ ]*\).*/\1/
. 스크립트는 매우 강력하거나 우아하지 않습니다. 예를 들어 출력에서 패키지 이름을 추출하기 전에 현재 커널을 확인하는 이유는 무엇입니까? 대안으로, sudo apt-get autoremove --purge
Xubuntu 15.10과 같은 최신 Ubuntu 릴리스에서 대부분의 오래된 커널을 제거합니다.