วิธีการแสดงรายการ Windows Services ทั้งหมดโดยใช้ PowerShell หรือ Command Line
แอปพลิเคชันที่ทำงานอยู่ที่คุณเห็นบนหน้าจอเป็นเพียงเศษเสี้ยวของสิ่งที่เกิดขึ้นในWindows ตั้งแต่การจัดการไดรเวอร์อุปกรณ์ไปจนถึงการรักษาความปลอดภัย กระบวนการพื้นหลังจำนวน มากจะดูแล พีซีWindows ที่ใช้งานได้(Windows)
สำหรับผู้ดูแลระบบที่ดูแลคอมพิวเตอร์หลายเครื่อง สิ่งสำคัญคือต้องสามารถดูสถานะของบริการที่สำคัญเหล่านี้ได้ วิธี การของตัวจัดการงาน(Task Manager)ช้าเกินไปสำหรับสิ่งนี้ และคุณไม่สามารถทำให้เป็นอัตโนมัติด้วยสคริปต์ได้
การแก้ไขปัญหา? เครื่องมือบรรทัดคำสั่ง เมื่อใช้Command Prompt หรือ PowerShell(Command Prompt or PowerShell)คุณสามารถอ่านข้อมูล บริการ ของ Microsoft(Microsoft)ที่ทำงานอยู่บนระบบได้อย่างรวดเร็ว ช่วยให้คุณวินิจฉัยปัญหาได้อย่างรวดเร็ว
แสดงรายการWindows ServicesในCommand Prompt
แม้ว่าจะไม่ได้ยืดหยุ่นหรือทรงพลังเท่ากับWindows PowerShellแต่Command Prompt(the Command Prompt)ก็ยังเป็นเครื่องมือที่ยอดเยี่ยมสำหรับผู้ดูแลระบบ คุณสามารถใช้ คำสั่ง queryexเพื่อรับสถานะของบริการทั้งที่ทำงานอยู่และถูกปิดใช้งาน จากนั้นใช้คำสั่ง taskkill(use the taskkill command)เพื่อยุติกระบวนการที่น่ารำคาญ
- หากต้องการใช้คำสั่ง queryex ให้เรียกใช้Command Promptในฐานะผู้ดูแล(Administrator)ระบบ คุณสามารถค้นหาแอปได้โดยค้นหา cmd ในเมนูเริ่ม
- มีหลายวิธีในการใช้คำสั่ง sc queryex ประเภทและสถานะ(State)เป็นสองพารามิเตอร์ที่ใช้บ่อยที่สุด ตัวอย่างเช่น ป้อนคำสั่งต่อไปนี้เพื่อดู กระบวนการ Windows ทั้งหมด :
sc queryex type=service state=all
- มุมมองเริ่มต้นอาจดูล้นหลามเล็กน้อย คุณสามารถแสดงเฉพาะชื่อของกระบวนการเพื่อให้แยกวิเคราะห์รายการได้ง่ายขึ้น:
sc queryex type=service state=all | find /i “SERVICE_NAME:”
- โดยค่าเริ่มต้น คำสั่งจะแสดงกระบวนการที่ทำงานอยู่ทั้งหมด หากต้องการค้นหารายการที่ไม่ใช้งาน ให้แก้ไขพารามิเตอร์สถานะ:
sc queryex type=service state=inactive
- คุณยังสามารถสอบถามสถานะของกระบวนการเฉพาะโดยใช้ชื่อกระบวนการได้ สิ่งนี้มีประโยชน์อย่างเหลือเชื่อสำหรับผู้ดูแลระบบ เนื่องจากสามารถตั้งค่าแบตช์ไฟล์เพื่อตรวจสอบหลายกระบวนการในคราวเดียว นี่คือตัวอย่าง:
sc แบบสอบถาม DeviceInstall(sc query DeviceInstall)
แสดงรายการWindows ServicesในPowerShell
PowerShellมีไว้เพื่อเป็นเชลล์บรรทัดคำสั่งเฉพาะสำหรับWindowsรุ่นใหม่ ดังนั้นมันจึงให้การเข้าถึงเกือบทุกองค์ประกอบของระบบปฏิบัติการผ่านคำสั่ง และ บริการ Windowsก็ไม่มีข้อยกเว้น
ข้อได้เปรียบของ PowerShell(PowerShell)คือคุณสามารถทำให้เป็นอัตโนมัติได้อย่างง่ายดาย คำสั่ง PowerShell(PowerShell)ทั้งหมดสามารถคอมไพล์เป็นสคริปต์ที่ซับซ้อน ช่วยให้คุณตั้งค่างานการดูแลระบบบนพีซีหลายเครื่องโดยไม่ต้องยุ่งยาก
- เริ่มต้น(Start)ด้วยการเปิดPowerShell คุณสามารถค้นหาได้ในStart Menu ; เพียงตรวจสอบให้แน่ใจว่าได้เรียกใช้อินสแตนซ์ที่ยกระดับ (เช่น ในฐานะผู้ดูแลระบบ(Administrator) )
- คำสั่งที่ง่ายที่สุดสำหรับการแสดงรายการบริการWindowsบนPowerShellคือGet-Service โดยจะแสดงบริการทั้งหมดบนคอมพิวเตอร์ของคุณ พร้อมสถานะและชื่อบริการ ปัญหาเดียวคือรายการบริการอาจค่อนข้างยาว
- เมื่อใช้Get-Serviceควรส่งออกรายการไปยังไฟล์ข้อความ คุณสามารถทำได้โดยใช้ท่อดังนี้:
Get-Service | Out-File “C:\logs\All_Services.txt”
- หากต้องการค้นหาสถานะของบริการเฉพาะ ให้ทำตาม คำสั่ง Get-Serviceพร้อมชื่อของบริการ คุณสามารถขอสถานะของกระบวนการต่างๆ ได้โดยคั่นชื่อด้วยเครื่องหมายจุลภาค
รับบริการ CryptSvc, COMSysApp(Get-Service CryptSvc, COMSysApp)
- ไปป์ยังสามารถใช้เพื่อรวมGet-Service cmdlet กับ ฟังก์ชัน Where-Objectและกรองผลลัพธ์ตามStatus คำสั่งต่อไปนี้แสดงสิ่งนี้โดยรับ บริการที่ ทำงาน(Running) อยู่ทั้งหมด :
Get-Service | Where-Object {$_.Status -EQ “Running”}
การตรวจสอบการขึ้นต่อกันของบริการ
กระบวนการที่ซับซ้อนใดๆ จะถูกแบ่งออกเป็นบริการที่พึ่งพาซึ่งกันและกันหลายบริการ นี่คือเหตุผลที่เพียงแค่การรับสถานะของบริการเฉพาะมักจะไม่เพียงพอ คุณต้องตรวจสอบสถานะของบริการที่ขึ้นอยู่กับบริการด้วย
- หากต้องการดูบริการที่ต้องการโดยบริการเฉพาะ ให้ใช้ แฟล็ก -RequiredServicesด้วยGet-Service cmdlet นี่คือตัวอย่าง:
รับบริการ -ชื่อ CryptSvc –RequiredServices(Get-Service -Name CryptSvc –RequiredServices)
- ในทำนองเดียวกัน หากต้องการรับรายการบริการที่ขึ้นอยู่กับบริการเฉพาะ ให้ใช้ประโยชน์จากแฟล็ก -DependentServices(-DependentServices)
รับบริการ -ชื่อ CryptSvc -DependentServices(Get-Service -Name CryptSvc -DependentServices)
ค่าสถานะทั้งสองนี้มีความสำคัญในการเขียนสคริปต์เพื่อเริ่มหรือหยุด บริการ Windows โดยอัตโนมัติ เนื่องจากเป็นช่องทางในการติดตามบริการทั้งหมดที่เชื่อมต่อกับบริการที่ได้รับผลกระทบ
แสดงรายการบริการ(Services)Windows บนคอมพิวเตอร์ระยะไกล(Remote)
วิธี การPowerShellไม่จำกัดเฉพาะเครื่องคอมพิวเตอร์ คุณสามารถใช้Get-Service cmdlet ที่มีไวยากรณ์เดียวกันกับที่อธิบายไว้ข้างต้นเพื่อสอบถามกระบวนการของพีซีระยะไกลได้เช่นกัน เพียง(Just)เพิ่ม แฟล็ก -ComputerNameต่อท้ายเพื่อระบุว่าคอมพิวเตอร์ระยะไกลเครื่องใดที่จะดึงข้อมูล
นี่คือตัวอย่าง:
รับบริการ CryptSvc -ComputerName Workstation7(get-service CryptSvc -ComputerName Workstation7)
การ จัดการบริการ(Services)Windows ในPowerShell
การรับสถานะของบริการไม่ใช่สิ่งเดียวที่คุณสามารถทำได้ในWindows PowerShell (Windows PowerShell)ในฐานะที่เป็นสภาพแวดล้อมการเขียนสคริปต์ที่เต็มเปี่ยม มีทางเลือกสคริปต์ให้กับตัวเลือก GUI ทั้งหมด(GUI)
Powershell cmdlet สามารถหยุด เริ่ม รีสตาร์ท หรือแม้แต่แก้ไขบริการ เมื่อจับคู่กับคำสั่งGet-Service อัตโนมัติแล้ว สคริปต์ (Get-Service)PowerShellสามารถเขียนได้เพื่อทำให้งานการจัดการระบบทุกวันเป็นไปโดยอัตโนมัติ
- นอกจากการสอบถามสถานะของบริการแล้ว คุณยังสามารถใช้PowerShellเพื่อจัดการได้ การเริ่มต้นหรือหยุดบริการสามารถทำได้ด้วยคำสั่งเดียว โดยต้องการเพียงชื่อของบริการเท่านั้น ตัวอย่างเช่น นี่คือวิธีที่คุณสามารถหยุดบริการได้:
หยุดบริการ -ชื่อ Spooler(Stop-Service -Name Spooler)
- การเริ่มบริการดำเนินการในลักษณะเดียวกัน:
เริ่มบริการ -ชื่อ Spooler(Start-Service -Name Spooler)
- หากบริการทำงานไม่ถูกต้อง คุณยังสามารถเลือกที่จะเริ่มต้นใหม่ได้:
เริ่มบริการใหม่ - ชื่อตัวจัดคิว(Restart-Service -Name Spooler)
- นอกจากนี้ยังมีSet-Service cmdlet ที่สามารถใช้เพื่อเปลี่ยนคุณสมบัติของบริการ ที่นี่เราปิดใช้งานการเริ่มต้น บริการ Print Spooler โดยอัตโนมัติ :
ชุดบริการ 'ตัวจัดคิว' -StartupType ปิดการใช้งาน(Set-Service ‘Spooler’ -StartupType Disabled)
วิธีที่ดีที่สุดในการแสดงรายการ Windows (List Windows) Servicesคืออะไร?
ไม่ว่าคุณจะใช้Windows 10หรือWindows ServerคุณสามารถดูรายการบริการWindows ทั้งหมดได้ (Windows)คุณสามารถวินิจฉัยปัญหาเกี่ยวกับฟังก์ชันระบบที่สำคัญหรือหยุดบริการของ Microsoft ที่ไม่จำเป็นเพื่อปรับปรุงประสิทธิภาพ
ด้วยเหตุนี้PowerShellจึงเป็นตัวเลือกที่ดีที่สุด แม้ว่าคุณจะสามารถรับรายการบริการในCommand Promptได้ แต่ฟังก์ชันเพิ่มเติมของPowerShellนั้นมีประโยชน์มากกว่า
คุณสามารถใช้PowerShell cmdlets เพื่อรับสถานะการบริการของ กระบวนการ Windowsกรองตามสถานะหรือพารามิเตอร์อื่นๆ นอกจากนี้ยังง่ายต่อการระบุบริการที่เกี่ยวข้องและเริ่มต้นหรือหยุดบริการตามต้องการ
Related posts
PowerShell กับ Command Prompt: ข้อดีและข้อเสีย
วิธีการฆ่ากระบวนการโดยใช้ Command Line ใน Windows 10
วิธี Delete หรือสร้างงานที่กำหนดเวลาไว้กับ PowerShell ใน Windows 11
วิธีถอนการติดตั้งไดรเวอร์โดยใช้ Command Prompt ใน Windows 11
วิธีการตั้งค่าและกำหนดค่า Location Services ใน Windows 11
วิธีการซ่อน Badges บน Taskbar Icons ใน Windows 11
วิธีเปิดใช้งานหรือปิดใช้งาน Dynamic Refresh Rate (DRR) ใน Windows 11
รายชื่อคำสั่ง DISKPART และวิธีการใช้งานใน Windows 11/10
วิธีการบล็อก Windows 11 จากการติดตั้งบนคอมพิวเตอร์ของคุณ
วิธีการแสดงหรือซ่อนแอพที่ใช้มากที่สุดใน Start Menu บน Windows 11
วิธีการลงชื่อออกจาก email account ใน Mail app ใน Windows 11
วิธีการติดตั้ง Windows 11 โดยใช้ Hyper-V ใน Windows
วิธีการติดตั้ง Windows Subsystem สำหรับ Linux บน Windows 11
วิธีเปิดใช้งานหรือปิดใช้งาน Snap Layouts บน Windows 11
สร้างรายการโปรแกรมเริ่มต้นผ่าน Command Line หรือ PowerShell
ไม่สามารถเปลี่ยน Windows Insider Channel บน Windows 11 - DEV หรือเบต้า
PowerShell Arrays: วิธีสร้างและใช้งาน
เปิดใช้งานหรือปิดใช้งาน Wi-Fi และ Ethernet adapter บน Windows 11
Click ที่นี่เพื่อป้อนข้อความรับรองล่าสุดของคุณใน Windows 11
Swiss File Knife เป็นประโยชน์ Command Line tool ที่มีประโยชน์สำหรับ Windows