17 CLI commands ที่ Developer ควรเรียนรู้เอาไว้
05-เม.ย.-24
คัมภีร์เทพ IT
ในฐานะของ Developer อาจมีบางสถานการณ์ที่คุณจำเป็นต้องใช้งานคำสั่ง Command Line Interface ถึงแม้คุณจะไม่ได้ใช้งานพวกมันบ่อยนัก แต่การที่รู้จักบางคำสั่งไว้ก็น่าจะมีประโยชน์ต่อการทำงานของคุณ วันนี้เราดู 17 CLI commands ที่ Developer ควรเรียนรู้เอาไว้
1. # tree
คุณทราบวิธีการแสดงรายการ File Structure ของ Directory ต่อไปนี้หรือไม่?
จะเห็นว่า มันแสดงความสัมพันธ์ของ Directory กับ File ได้เป็นอย่างดี
ก่อนอื่น คุณต้องติดตั้งคำสั่ง tree ก่อน
จากนั้น ก็เพียง Execute คำสั่ง tree ใน File Directory
2. # wc
wc มาจากคำว่า Word Count แต่มักถูกใช้สำหรับสถิติเกี่ยวกับ File มันสามารถนับจำนวน Words, Lines, Characters, Bytes เป็นต้น
ในการทำงาน คุณสามารถใช้คำสั่งนี้เพื่อนับจำนวนบรรทัดของ Code ใน File ได้
3. # du
สามารถใช้คำสั่งนี้เพื่อ Print ข้อมูล File Size สำหรับ Directory แม้เราอาจใช้คำสั่งนี้ไม่บ่อยนัก แต่มันก็เป็นคำสั่งที่คุ้มค่าในการเรียนรู้
- du -h: Print ข้อมูลที่เหมาะสมสำหรับการอ่านของมนุษย์
- du -a: แสดงรายการของข้อมูลเกี่ยวกับขนาด File ใน Directory
- du -s: แสดงเฉพาะขนาดทั้งหมดเท่านั้น จะไม่แสดงข้อมูลจำเพาะ
4. # alias
คำสั่ง alias ถูกใช้เพื่อตั้งชื่อนามแฝง (alias) ของคำสั่ง เพียงแค่คุณเพียงพิมพ์ alias มันก็จะแสดงรายการของนามแฝงทั้งหมดในปัจจุบันออกมาให้
เรามาลองตั้งชื่อนามแฝงสำหรับ git status กัน
ข้อมูลเพิ่มเติม: หากคุณต้องการให้คำสั่ง git status อยู่แบบถาวร คุณควรตั้งค่ามันใน .profile หรือ .zshrc
5. # grep
เรามักจะต้องค้นหา Content ของ Log Files บน Server คำสั่ง grep จะเป็นตัวช่วยที่มีประโยชน์อย่างมาก
ด้านล่างนี้เป็น Log File ที่ชื่อ test.log ซึ่งประกอบด้วยสิ่งต่อไปนี้:
เราจะเน้นตรงที่มีตัวอักษร a ได้อย่างไร? มันไม่ยากเลยจริงไหม
6. # cat
วัตถุประสงค์หลักของ cat ก็คือ การดู Content ของ File แล้ว Print มันบน Screen
นอกจากนี้ มันยังมีประโยชน์ในเรื่องอื่น ๆ อีก 2-3 อย่าง
- Clear Contents ของ a.js
- Copy Contents ของ a.js ไปยัง b.js
- เพิ่ม Contents ของ a.js ไปที่อักษรตัวสุดท้ายของ c.js
7. # clear
บางครั้ง เราก็จำเป็นต้องดำเนินการบางอย่างใน Terminal ซึ่งอาจทำให้เรารู้สึกรำคาญกับ Content ที่รกเต็มหน้าจอของ Screen
คำถามคือ แล้วเราจะ Clear มันอย่างไร? เราจำเป็นต้องลบทีละบรรทัดหรือไม่?
8. # cp
คำสั่ง cp จะถูกใช้งานเพื่อ Copy File หรือ Directory
- cp -f: เมื่อ File ที่จะ Copy มีการ Overwrite File ที่ต้องการ จะไม่มีข้อความแจ้งเตือนใด ๆ
- cp -r: หาก Files ที่จะ Copy เป็น Directory File พวก Subdirectories และ Files ทั้งหมดที่อยู่ภายใต้ Directory ก็จะถูก Copy ไปด้วย
9. # cd
เชื่อว่าคำสั่งนี้ Developer ทุกคนน่าจรู้ความหมายกันเป็นอย่างดี
แต่เราสามารถใช้คำสั่ง cd – เพื่อย้อนกลับไปยัง Directory ล่าสุดที่คุณเยี่ยมชมก่อนหน้านี้ได้เช่นกัน ซึ่งดูเหมือนจะเป็นเคล็ดลับที่มีประโยชน์
10. # ls
นี่เป็นอีกคำสั่งที่ถูกใช้งานบ่อย มันถูกใช้เพื่อแสดง Content List ของ File Directory
เราสามารถใช้คำสั่งนี้ได้อย่างน้อย 3 วิธี
- ls -a: แสดง Files และ Directories ทั้งหมด (รวมถึงพวกมันทั้งหมดที่ขึ้นต้นด้วย .directory)
- ls -A: แสดง Files และ Directories ทั้งหมด (ไม่รวม Directories ขึ้นต้นด้วย .directory)
- ls -R: แสดง Files และ Directories ทั้งหมด หากมี Files ใน Directory พวกมันก็จะถูกแสดงตามลำดับ
11. # rm
มันถูกใช้สำหรับลบ File หรือ Directory
- rm -i: ลบ Files ใน Directory ทีละ File มันจะถามคุณว่าต้องการจะลบ File จริงหรือไม่
- rm -r: ประมวลผล Files ทั้งหมดใน Directory ที่ต้องการและ Subdirectories ของมัน (หมายเหตุ: มันจะไม่ลบ Files)
- rm -f: ใช้เพื่อลบ File หรือ Directory
12. # tail
เชื่อว่า คุณน่าจะเคยมีประสบการณ์ในการดู Log Content บน Server มาบ้างแล้ว ในกรณีนี้ tail จะเป็นตัวช่วยที่ดีอย่างแน่นอน
คำสั่ง tail -f filename จะแสดง Contents ในส่วนท้ายของ Filename บนหน้าจอ และเมื่อ Content มีการเปลี่ยนแปลง คุณจะเห็น Content ล่าสุดนั้น บนหน้าจอ
13. # mv
บางครั้ง เราก็ต้องการเปลี่ยนชื่อ File หรือ Directory หรือย้ายมันไปที่อื่น เราจะสามารถใช้คำสั่ง mv ได้
- แก้ไขชื่อ File
- ย้าย Files ไปยัง Directories อื่น
14. # touch
คุณสามารถใช้คำสั่ง touch เพื่อสร้าง File ใหม่ แม้ว่ามันจะถูกใช้เพื่อแก้ไข Time Attribute ของ File หรือ Directory ก็ตาม
15. # which
หากคุณต้องการดู Path ของคำสั่งที่ต้องการ คุณสามารถใช้คำสั่ง which ได้
16. # mkdir
เชื่อว่า คุณคงรู้จักและน่าจะเคยใช้คำสั่งนี้มาบ้างแล้ว
แต่จริง ๆ แล้ว mkdir -p dirname เป็นคำสั่งที่เราไม่ค่อยได้ใช้มันสักเท่าไร ลองมาดูกันว่ามันใช้ทำอะไร?
17. # whoami
มันถูกใช้เพื่อแสดง User ที่กำลัง Login เข้าใช้งานอยู่
ที่มา: https://blog.stackademic.com/
รับตำแหน่งงานไอทีใหม่ๆ ด้วยบริการ IT Job Alert
อัพเดทบทความจากคนวงในสายไอทีทาง LINE ก่อนใคร
อย่าลืมแอดไลน์ @techstarth เป็นเพื่อนนะคะ
บทความล่าสุด