apt-get นับจำนวนการอัพเดทที่มี


11

ปัจจุบันฉันใช้สิ่งนี้เพื่อนับจำนวนการอัปเดตที่มีอยู่

NUMOFUPDATES=$(aptitude search "~U" | wc -l)

มีวิธีทำเช่นเดียวกันกับ apt (ไม่ใช่ความถนัด) แต่ไม่ได้ใช้ update-notifier หรือไม่?



คำถามของคุณเพิ่งตอบฉันเพราะฉันมีความถนัด
soger

คำตอบ:


13

คุณสามารถใช้apt-checkจากupdate-notifier-common:

$ /usr/lib/update-notifier/apt-check --human-readable
0 packages can be updated.
0 updates are security updates.

นี่เป็นเครื่องมือเดียวกับที่อัพเดทmotdข้อความ


1

คุณสามารถใช้apt-get -sเพื่อจำลองกระบวนการอัปเกรดและแยกเฉพาะจำนวนแพ็คเกจที่อัปเกรดด้วย

LANG=C apt-get upgrade -s |grep -P '^\d+ upgraded'|cut -d" " -f1

ซึ่งจะส่งผลให้จำนวนของแพ็กเกจ



-1

ฉันเพิ่งรันคำสั่ง:

sudo apt-get update && sudo apt-get upgrade

หลังจากดำเนินการตามกระบวนการอัพเดตแล้วจะให้เอาต์พุตสำหรับupgradeคำสั่งดังนี้:

Reading package lists... Done
Building dependency tree       
Reading state information... Done
The following packages will be upgraded:
  wine1.5 wine1.5-i386
2 upgraded, 0 newly installed, 0 to remove and 0 not upgraded.
Need to get 24.1 MB of archives.
After this operation, 286 kB of additional disk space will be used.
Do you want to continue [Y/n]?

บรรทัดที่ 6 ระบุว่ามีการอัพเกรด 2 ตัวและบรรทัดที่ 5 จะแสดงรายการแพ็คเกจที่มีการอัพเกรด ถ้าฉันไม่ได้อยู่ในอารมณ์ที่จะติดตั้งการอัพเกรดในขณะนั้นฉันก็กดnและไปต่อ

ตรงและเรียบง่าย

หมายเหตุ: หากมีการปรับปรุง kernal <x> not upgradedใช้ได้เช่นกันก็จะแสดงให้พวกเขาเป็น


ฉันคิดว่า OP ต้องการเรียกหมายเลขนี้ในรูปแบบที่สามารถใช้ในสคริปต์ไม่ใช่เพื่อดูเท่านั้น
Eric Carvalho

ขอบคุณ แต่สิ่งที่ฉันต้องได้รับคือจำนวนอัปเดตที่มีในตัวอย่างของคุณคือ "2" จากนั้นสคริปต์จะแสดงการแจ้งเตือน "การปรับปรุงที่พร้อมใช้งาน - 2"
net cat

@Eric Carvalho True
net cat

@netcat: โอ้ ... ไม่รู้คำตอบแล้วฉันคิดว่าคุณแค่อยากรู้ว่ามีการอัปเดตจำนวนมากเท่าไหร่ (ตามที่ฉันมักจะทำบ่อยที่สุด) :-)
Aditya

@netcat: สคริปต์ python จะไม่เป็นไรสำหรับคุณหรือไม่ ฉันอาจลองเขียนสคริปต์ที่ ..
Aditya
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.