쉬운

쉬운

내 패키지에 업데이트가 있을 때 cron 실행 보고 스크립트가 알림을 보내도록 하고 싶습니다. apt-get사용 가능한 업데이트 목록을 제공하지만 더 이상 아무 작업도 수행하지 않도록 할 수 있는 방법이 있습니까 ?

답변1

쉬운

최신 버전에는 apt특정 스위치가 있습니다.

apt list --upgradable

적절한

이전 apt-get명령 의 경우 -u스위치는 업그레이드 가능한 패키지 목록을 표시합니다.

# apt-get -u upgrade --assume-no

~에서apt-get매뉴얼 페이지:

-u
--업그레이드 표시
 업그레이드된 패키지를 표시합니다. 업그레이드할 모든 패키지 목록을 인쇄합니다. 구성 항목: APT::Get::Show-Upgraded.
--가정-아니요  모든 프롬프트에 자동으로 "아니요"라고 대답합니다. <== 설치 시작을 방지합니다.

답변2

apt-get --just-print upgrade

읽기가 쉽지는 않지만 apt-get 출력을 구문 분석하기 위한 Perl oneliner는 다음과 같습니다.

apt-get --just-print upgrade 2>&1 | perl -ne 'if (/Inst\s([\w,\-,\d,\.,~,:,\+]+)\s\[([\w,\-,\d,\.,~,:,\+]+)\]\s\(([\w,\-,\d,\.,~,:,\+]+)\)? /i) {print "PROGRAM: $1 INSTALLED: $2 AVAILABLE: $3\n"}'

다음과 같이 출력되어야 합니다.

PROGRAM: grub-pc INSTALLED: 1.99-21ubuntu3.1 AVAILABLE: 1.99-21ubuntu3.9

다른 사람들에게도 도움이 되길 바라며,

답변3

Enzotib에서 영감을 받은 또 다른 옵션:

aptitude search '~U' | wc -l

이 명령은 aptitude를 사용하여 새 패키지를 출력한 다음 wc를 사용하여 줄 수를 계산합니다.

그런데 작은 따옴표가 없는 enzotib의 솔루션을 찾았는데 ~U이는 저에게 적합하지 않았습니다. (Wheezy, ZSH, 기능 0.6.8.2)

고쳐 쓰다:

새로운 아파트를 사용하면 다음을 수행할 수 있습니다.

apt list --upgradeable

답변4

당신은 실행할 수 있습니다

aptitude -F%p --disable-columns search ~U

또는 문서화되지 않은

/usr/lib/update-notifier/apt-check -p; echo

모의 객체를 사용하는 또 다른 방법 apt-get:

apt-get -s dist-upgrade | awk '/^Inst/ { print $2 }'

관련 정보