Skip to content

สั่งปิดหรือรีบูตคอมด้วย Python

สวัสดีผู้อ่านทุกท่านครับ บทความนี้จะพาผู้อ่านไปสั่งปิดหรือรีบูตคอมพิวเตอร์ด้วย Python กันครับ

ใน Python จะมีโมดูลหนึ่งที่ใช้สำหรับทำการสั่งงานกับระบบปฏิบัติการ ชื่อว่า os เป็นโมดูลมาตรฐานของ Python บทความนี้จะนำความสามารถนี้มาใช้ ส่วนรายละเอียดของโมดูล os จะกล่าวในบทความถัดไปครับ
  ทั้งระบบปฏิบัติการ Windows , Linux และ Mac OS ต่างก็มีคำสั่งบนคอมมาไลน์สำหรับใช้สั่งงานคอมพิวเตอร์ เช่น สั่งปิดเครื่องหรือบูตเครื่องใหม่ (สรุปง่าย ๆ คำสั่งคอมมาไลน์มีทุกระบบปฏิบัติการบนคอมพิวเตอร์ครับ) ในการสั่งปิดหรือรีบูตเครื่อง ต้องใช้คำสั่ง shutdown ทั้งนี้บนระบบปฏิบัติการ Windows , Linux และ Mac OS มีการใช้งานแตกต่างกันครับ
คำสั่งปิดเครื่องบนระบบปฏิบัติการ Windows

shutdown /s

หมายถึงการสั่งปิดเครื่องคอมพิวเตอร์ทันที
หากต้องการสั่งปิดเคื่องด้วยการนับเวลาถอยหลัง

shutdown /s /t วินาที

ตัวอย่างเช่น

shutdown /s /t 60

หมายถึง สั่งปิดเครื่องเวลาหลังจากนี้ 60 วินาที
ส่วนการรีบูตเครื่องใหม่จะใช้คำสั่ง

shutdown /r

ถ้าต้องการยกเลิกใช้คำสั่ง

shutdown /a

คำสั่งปิดเครื่องบนระบบปฏิบัติการ Linux และ Mac OS
ต้องรันในสิทธิ์ Root หรือ Super User ก่อนนะครับ ในสาย Debian เช่น Ubuntu จะเป็น sudo su แล้วจึงใช้คำสั่งครับ ปิดเครื่องทันทีใช้คำสั่ง

shutdown now

หากต้องการกำหนดเวลาปิดเครื่องใช้คำสั่ง

shutdown -p 20:00

หมายถึง ให้ระบบปิดเครื่องในเวลา 20.00 น.

shutdown -p +15

หมายถึง ปิดเครื่องนับจากนี้ 15 นาที
หากต้องการรีบูตเครื่องใหม่ ให้เปลี่ยนจาก -p เป็น -r เช่น

shutdown -r now

หมายถึง ให้รีบูตเครื่องทันทีหลังจากที่สั่ง

หลังจากเราได้เรียนรู้คำสั่งไปกับบ้างแล้ว
เรามาเริ่มเขียนโปรแกรมกันเลยครับ

import os
os.system("shutdown /s") #ให้ผู้อ่านเปลี่ยนตามความต้องการของผู้อ่านครับ เช่น รีบูตเครื่องใหม่

สำหรับบนลินุกซ์ต้องรันโค้ดในสิทธิ์ Root หรือ Super User จึงจะทำงานได้ครับ

แล้วบันทึกลองรันดูจะพบว่าคอมพิวเตอร์จะปิดเครื่องเองครับ สามารถนำไปประยุกต์ใช้งานได้ เช่น การสั่งปิดเครื่องคอมพิวเตอร์จำนวนมากระยะไกลผ่านเครือข่ายอินเทอร์เน็ต เป็นต้นครับ

ติดตามบทความต่อไปนะครับ
ขอบคุณครับ

2 thoughts on “สั่งปิดหรือรีบูตคอมด้วย Python

  1. Anonymous

    สำหรับ Linux หรือ MAC ต้อวใช้ สิทธิ Root หรือเป็น Super User ก่อนใช้ Shutdown ไม่ใช่เหรอครับ

    Reply
    1. wannaphong

      ผมพลาดเอง ขออภัยมา ณ ที่นี่ครับ ขอบคุณครับ เพิ่มเติมเนื้อหาแล้วครับ

      Reply

ใส่ความเห็น

อีเมลของคุณจะไม่แสดงให้คนอื่นเห็น ช่องที่ต้องการถูกทำเครื่องหมาย *