Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> ระบบ >> Windows

วิธีรันคำสั่งอัตโนมัติเมื่อเปิด Command Prompt/PowerShell

หากคุณทำงานกับคอมพิวเตอร์นานพอ คุณจะพัฒนาเวิร์กโฟลว์บางอย่าง สิ่งเหล่านี้อาจง่ายหรือซับซ้อน แต่เป็นไปได้ว่าคุณจะได้เวิร์กโฟลว์บางอย่างที่เป็นของคุณเท่านั้น ยิ่งคุณทำมากกับคอมพิวเตอร์ ยิ่งน่าจะใช้ Command Prompt หรือ PowerShell ที่ทรงพลังกว่า

บางครั้งคุณอาจพบว่าตัวเองรันคำสั่งเดิมๆ ทุกครั้งที่เปิด PowerShell หรือ Command Prompt แทนที่จะทำซ้ำ ให้ประหยัดเวลาและรันอัตโนมัติตอนเปิดดีกว่า

ทำได้อะไรกับคำสั่งอัตโนมัติ?

คุณอาจมีเวิร์กโฟลว์ที่สร้างไฟล์จำนวนมากในไดเรกทอรีทุกครั้งที่ใช้ Command Prompt หรือ PowerShell ด้วยคำสั่งอัตโนมัติ คุณสามารถล้างไดเรกทอรีนั้นทุกครั้งที่เปิด Prompt ได้ สามารถใช้เพื่อเปลี่ยนไดเรกทอรีเริ่มต้นที่ Command Prompt หรือ PowerShell เปิดอยู่ได้ด้วย

นี่แค่ตัวอย่างบางส่วน เวิร์กโฟลว์ของคุณเองจะบอกว่าควรรันอะไรอัตโนมัติ

ตั้งค่าคำสั่ง PowerShell อัตโนมัติ

เพื่อรันคำสั่งอัตโนมัติใน PowerShell ให้แก้ไข Profile เริ่มต้นด้วยการตรวจสอบว่ามี Profile อยู่แล้วหรือไม่ เปิด PowerShell พิมพ์:

Test-Path $Profile

จะคืนค่า True หรือ False หากเป็น False ให้รันคำสั่ง:

New-Item –Path $Profile –Type File –Force

คำสั่งนี้จะเขียนทับ Profile ที่มีอยู่ หากคำสั่งก่อนหน้าคืนค่า True คุณอาจไม่ต้องการรันคำสั่งนี้ หากต้องการเริ่มใหม่ ก็ทำได้

วิธีรันคำสั่งอัตโนมัติเมื่อเปิด Command Prompt/PowerShell

เพื่อตั้งค่าคำสั่งอัตโนมัติจริง ให้แก้ไข Profile ใช้ Text editor ที่ชอบ แต่ Notepad ติดตั้งมามาให้ แก้ไขไฟล์ใน Notepad โดยพิมพ์:

notepad $Profile

ใส่คำสั่ง PowerShell ใดๆ ที่รันได้ที่นี่ จะรันอัตโนมัติทุกครั้งที่เปิด PowerShell หากคุณคุ้นเคยกับ Linux นี่เหมือนการแก้ไขไฟล์ "~/.bash_profile"

ในส่วนใหญ่ Execution Policy ของ PowerShell จะบล็อกสคริปต์นี้จากการรัน เพื่อช่วยรักษาความปลอดภัยระบบ เพื่ออนุญาตให้สคริปต์รัน ให้เปิด PowerShell เป็น Administrator และรัน:

Set-ExecutionPolicy RemoteSigned

อ่านพรอมต์และกด Y เพื่อตั้งค่า Execution Policy ใหม่

ตั้งค่าคำสั่ง Command Prompt อัตโนมัติ

เปรียบเทียบกับวิธีแบบ Unix สำหรับ PowerShell Command Prompt เป็น Windows-like มากกว่า มี 2 วิธี ขึ้นอยู่กับการทำงานที่คุณชอบ

วิธีที่ 1: Windows Registry

เหมือนวิธี PowerShell ระบุสคริปต์ที่จะรันทุกครั้งที่เปิด Command Prompt แต่ใช้ Windows Registry กำหนดไฟล์ที่จะรัน สมมติว่าต้องการใช้ไฟล์ชื่อ "auto.cmd"

เพื่อสร้าง Registry value ที่ถูกต้อง เปิด Command Prompt รัน:

reg add "HKCU\Software\Microsoft\Command Processor" /v AutoRun ^ /t REG_EXPAND_SZ /d "%USERPROFILE%\init.cmd" /f

วิธีรันคำสั่งอัตโนมัติเมื่อเปิด Command Prompt/PowerShell

สร้างไฟล์ในโฟลเดอร์โปรไฟล์ (ปกติ "C:\Users\USERNAME") ชื่อ "auto.cmd"

แก้ไขไฟล์นี้ด้วยคำสั่งที่ต้องการรันอัตโนมัติเมื่อเปิด Command Prompt

หากตัดสินใจไม่ต้องการให้รันอัตโนมัติอีก ให้ลบ Registry key รัน:

reg delete "HKCU\Software\Microsoft\Command Processor" /v AutoRun

วิธีที่ 2: ใช้ Shortcut

หากมีกรณีง่ายๆ และไม่อยากใช้ Registry ใช้ Desktop shortcut ได้ ใน Windows 10 หา Command Prompt ในเมนู Start คลิกขวาเลือก "Open File Location" คัดลอก Shortcut Command Prompt วางบน Desktop

คลิกขวา Shortcut ที่วางใหม่ เลือก Properties จะเห็นส่วน Path ของแอป จะอ่านแบบนี้:

C:\Users\\Desktop\cmd.exe

แก้ไขโดยเพิ่ม -cmd /K แล้วตามด้วยคำสั่งที่ต้องการ ตัวอย่าง:

C:\Users\\Desktop\cmd.exe -cmd /K cls

จะเปิด Command Prompt แล้วเคลียร์หน้าจอ สามารถเชื่อมคำสั่งได้ด้วย && ระหว่างคำสั่ง ตัวอย่างอีกอย่าง:

C:\Users\\Desktop\cmd.exe -cmd /K cls && dir

จะเคลียร์หน้าจอแล้วแสดงเนื้อหาในไดเรกทอรี

สรุป

ขึ้นอยู่กับสิ่งที่ต้องการทำ วิธีใดวิธีหนึ่งข้างต้นควรจะใช้ได้ หากคุณใช้ Command Prompt มากขึ้น ลองดูคู่มือการปรับแต่งลักษณะที่นี่