หากคุณอยู่ใน Linux Shell/Terminal ตลอดเวลา aliases เป็น time-saver อันยิ่งใหญ่ นี่คือวิธีสร้าง Bash aliases ของตัวเอง พร้อมตัวอย่าง
Alias ใน Bash/Linux Shell คืออะไร?
Alias คือ shortcut ไปยังคำสั่งที่ยาวกว่า คล้าย keyboard shortcut – เช่น CTRL + C เป็น shortcut ไปยังคำสั่ง copy ในหลาย graphical OS (ประหยัดเวลาลากเมาส์คลิกหลายเมนู) aliases เป็น shortcuts ไปยัง terminal commands ที่ยาวกว่า (ประหยัดเวลาพิมพ์คำสั่งเต็ม)
Bash มี aliasing functionality built-in เหมือน Linux Shells อื่นๆ รวมถึง zsh ที่มี syntax คล้ายกัน
ตัวอย่างในบทความนี้ควรทำงานกับ Bash และ Zsh ทั้งคู่
การสร้าง alias
คำสั่ง alias ใช้สร้าง alias
ไวยากรณ์คำสั่ง alias และ unalias
นี่คือไวยากรณ์สำหรับคำสั่ง alias:
alias OPTIONS SHORTCUT=COMMAND
และนี่คือไวยากรณ์สำหรับคำสั่ง unalias:
unalias OPTIONS SHORTCUT
โปรดทราบว่า:
- OPTIONS คือรายการ optional flags จากตารางด้านล่าง
- SHORTCUT คือ shortcut ที่ต้องการพิมพ์เพื่อ execute COMMAND
- ประกอบด้วย alphanumeric characters, dashes, และ underscores เท่านั้น
- COMMAND ควรเป็นคำสั่งที่ต้องการ execute เมื่อพิมพ์ SHORTCUT
- ตัวอักษร = คั่น SHORTCUT และ COMMAND โดยไม่มีช่องว่าง ระหว่าง
- หาก COMMAND มีช่องว่าง ต้อง wrap ใน quotes
- Alias สามารถใช้ได้เฉพาะเป็นคำแรกในคำสั่งเท่านั้น
| alias Command Options | |
|---|---|
| -p | List currently defined aliases (เฉพาะ alias command) |
| -a | Clear all aliases (เฉพาะ unalias command) |
การกำหนด Alias ชั่วคราวใน Bash
เมื่อ alias command execute และ alias ถูกสร้าง มันพร้อมใช้งานเฉพาะ current session นั่นคือ terminal window ที่เปิดอยู่ หรือ login session กับ remote server
Exit terminal, logout, reboot ฯลฯ จะ clear ทุก aliases และไม่ recreate สำหรับ future sessions
ตัวอย่าง – สร้างและใช้ Alias
นี่คือตัวอย่างง่ายๆ การกำหนด alias:
alias say_hello='echo "Hello LinuxScrew!"'
ข้างต้น alias say_hello ถูกกำหนด ซึ่งจะรันคำสั่ง:
echo "Hello LinuxScrew!"
แตตอนนี้ แทนที่จะพิมพ์ทั้งหมด ให้รัน alias แทน:
say_hello
แม้ตัวอย่างง่ายนี้ ก็ประหยัดการพิมพ์มาก สำหรับคำสั่งซับซ้อน aliases ช่วยประหยัดการพิมพ์หรือจำ command strings ยาว
การกำหนด Alias ถาวรใน Bash
ต้องการทำ alias ถาวร ให้รอดชีวิต window closures, logouts, reboots? เพิ่ม alias commands ไปที่ไฟล์ .bashrc เพื่อโหลดทุกครั้งที่ล็อกอิน:
nano ~/.bashrc
ไฟล์ .bashrc กำหนดพฤติกรรม Bash shell สำหรับ user account ของคุณ เพียง append alias commands ไปท้ายไฟล์ ทีละบรรทัด เพื่อ execute alias commands อัตโนมัติทุกครั้งที่ล็อกอิน
รายการ Aliases ที่มีอยู่
List existing aliases โดยรัน alias command ด้วยตัวเลือก -p:
alias -p
ลบ Alias
เพื่อลบ alias ใช้ unalias:
unalias say_hello
Clear ทุก Aliases
Clear ทุก aliases โดยรัน alias command ด้วย -a option:
alias -a
Zsh Extras
แม้ข้างต้นจะทำงานใน Zsh shell Zsh ยังมี aliasing options อื่นๆ อีกมาก:
https://zsh.sourceforge.net/Intro/intro_8.html
Zsh เพิ่มความนิยมจากการกลายเป็น default shell ใน macOS ของ Apple แต่ Bash ยังคงเป็น default ใน Linux OS ส่วนใหญ่ จึงไม่ลึกลงรายละเอียดเพิ่มเติมของ Zsh เพื่อไม่ให้สับสน – นั่นสำหรับบทความอื่น!