One minute
How to Run Windows Update with PowerShell
เนื่องจากช่วงนี้ WFH แบบ 100% และ VPN client ของที่ทำงานกำหนดว่าต้องลง antivirus และต้องอัปเดต signature ล่าสุดเสมอ ถึงจะอนุญาตให้เข้าถึงเครือข่ายภายในได้
โดยส่วนตัว ผมไม่ได้ใช้ 3rd party antivirus มาพักใหญ่ๆ แล้ว (สาเหตุ 😅) ดังนั้น antivirus ที่ใช้งานอยู่ในเครื่องก็คือ Microsoft Defender ที่ติดมากับ Windows 10 นี่แหละ
ทำให้ทุกครั้งก่อนที่ผมจะต่อ VPN ต้องไปที่ Settings > Update & Security แล้วก็กด Check for updates ซึ่งพอต้องทำบ่อยๆ เข้าก็รู้สึกว่ามันเสียเวลา น่าจะมีวิธีแบบกดคลิกเดียวแล้วให้วินโดวส์ check และ install update อัตโนมัติ 😑 พอลอง Google ดูก็พบว่า PowerShell มันทำสิ่งนี้ได้ โดยใช้โมดูล PSWindowsUpdate
วิธีการติดตั้ง ก็รันคำสั่งนี้ใน Elevated PowerShell (run as Administrator)
Install-Module -Name PSWindowsUpdate
ส่วนวิธีใช้งานหาได้ทั่วไปจาก Google แต่สิ่งที่ต้องงมอยู่นานนน คือต้องใช้ option อะไรเพื่อจะติดตั้งเฉพาะ patch ของ Microsoft Defender (เพราะถ้าเป็น update อื่นๆ ผมอยากจะอ่านก่อนว่ามันคืออะไร และไม่ใช่เงื่อนไขจำเป็นในการต่อ VPN) หาไปหามาเกือบชั่วโมง ก็พบว่าอ่าน help ของมันเองได้ข้อมูลครบสุด 🤣 โดยใช้คำสั่ง
Get-Help Get-WindowsUpdate -Full
ลองเล่นอยู่ซักพักก็พบว่าคำสั่งที่ต้องการคือ
Get-WindowsUpdate -Install -WindowsUpdate -Category 'Definition Updates' -AcceptAll
ที่เหลือก็แค่สร้าง batch file ที่จะรันคำสั่งข้างบน อันนี้ผมใช้ PowerShell ตัวใหม่ ถ้าหากใครใช้ Windows PowerShell ธรรมดา ก็เปลี่ยน pwsh
เป็น powershell
แทน 🙃
@echo off
pwsh -ExecutionPolicy bypass -NoProfile -Command "& Get-WindowsUpdate -Verbose -Install -WindowsUpdate -Category 'Definition Updates' -AcceptAll"
pause
windows powershell windows update
136 Words
2021-07-27 07:39 (Last updated: 2021-07-27 21:48)
61c2c85 @ 2021-07-27