Computer >> บทช่วยสอนคอมพิวเตอร์ >  >> การแก้ไขปัญหา >> Linux

ค้นพบทุกคำสั่ง Linux Shell ด้วยคำสั่งเดียว

จริงๆ แล้วมีคำสั่งสำหรับลิสต์คำสั่งอื่นๆ ทั้งหมดที่ Linux shell รู้จัก แต่คุณน่าจะไม่คุ้นเคย หากเคยมี counterintuitive Catch-22 เรื่องการใช้ GNU/Linux command lines นี่คือตัวอย่าง โชคดีที่มันง่ายมากที่จะเรียนรู้คำสั่งนั้น แม้ shell จะไม่ให้มันโดยตรง

เริ่มต้น คุณต้องใช้ Ctrl+Alt+T เปิด command line ผู้ใช้ Xfce4, KDE และ LXDE คลิก System Tools ในเมนู Applications แล้วคลิก Terminal ผู้ใช้ Ubuntu Unity ค้นหาคำว่า Terminal บน Dash ทริคนี้ทำงานได้ดีเหมือนกันจาก virtual terminal environment แบบดั้งเดิม

วิธีที่ 1: ลิสต์คำสั่งด้วย compgen Shell Built-in

ที่ command line พิมพ์ compgen -c | more เพื่อลิสต์ทุกคำสั่งที่คุณรันได้ กด space bar ทุกครั้งที่อยากลงอีกหน้าข้อความยาว คุณจะสังเกตว่า utility นี้มีความคิดกว้างมากเกี่ยวกับว่าคำสั่งคืออะไร หลาย punctuation ที่ปกติไม่คิดว่าเป็นคำสั่ง ที่ไม่ทำงานหากพิมพ์ลง terminal เพราะใช้ link bits และ pieces ของคำสั่งยาว

หากคุณใช้ terminal emulator สมัยใหม่ คุณสามารถเลื่อนกลับขึ้นไปดูสิ่งที่พลาดได้เมื่อเริ่มเลื่อนจอออก เมื่อเจอคำสั่งที่หา พิมพ์ q หนึ่งครั้งเพื่อกลับ command prompt นี่เป็น bash built-in จริงๆ ดังนั้นหากคุณใช้ Almquist shell หรือ C-shell คุณไม่สามารถใช้ได้จริง

compgen utility เสนอตัวเลือกอื่นๆ อีก หลายอย่าง แม้คุณอาจสังเกตว่ามันไม่มี man page เพราะเป็น shell built-in ทำให้ยากนิดหน่อยที่จะรู้จักการใช้ โชคดีที่แต่ละตัวเลือกไม่ยากที่จะจำ พิมพ์ compgen -a เพื่อลิสต์ aliases ทั้งหมดที่คุณมี compgen -b ลิสต์ shell builtin commands อื่นๆ และ compgen -k ให้รายการ keywords หากอยากอ่านเพิ่มเติมเกี่ยวกับคำสั่ง ให้พิมพ์ man builtins เพื่อดูหน้า bash shell จริง

เนื่องจากหน้านี้ยาวมาก เนื่องจากกล่าวถึงทุกอย่างที่ bash ทำได้ด้วยตัวเอง พิมพ์ /compgen และกด enter เพื่อค้นหา คุณน่าจะได้ highlight แค่การกล่าวถึงครั้งแรก พิมพ์ / และกด enter อีกครั้ง คุณจะได้ paragraph อธิบายว่าโปรแกรมเล็ก compgen ทำอะไร

เพื่อความรู้ คุณต้องใช้ compgen -c | more เพื่อดูทุกคำสั่งในลำดับที่ดี คุณยังต้องใช้ compgen -b | more เพื่อเก็บไม่ให้มันเลื่อนจอออก เช่นกัน ตัวเลือกอื่นๆ ไม่ควรให้ output มากเกินไป ถ้าคุณใช้ terminal emulator สมัยใหม่ คุณสามารถเลื่อนกลับขึ้นไปได้ทันทีที่ output เริ่มไหลออกจอ

วิธีที่ 2: ใช้ Tab Key Trick

คุณน่าจะคุ้นเคยกับการกด tab key สองครั้งที่ bash prompt แล้วมันเริ่มเสนอคำแนะนำ หากพิมพ์คำสั่งบางส่วนและกด tab คำสั่งจะ complete ให้อัตโนมัติโดยไม่ต้องพิมพ์ต่อ หากคุณเหมือนผู้ใช้ส่วนใหญ่ คุณใช้สิ่งนี้ complete การย้ายเข้า directories ยาวหรือลบชื่อไฟล์ยักษ์โดยไม่ต้องพิมพ์ออกมา

ด้วยคำสั่งหนึ่ง คุณสามารถทำให้ trick นี้แสดงทุกคำสั่งบนระบบได้ พิมพ์ bash –norc และกด enter เพื่อได้ basic bash session ที่สุด เพราะ distributions ส่วนใหญ่ปิด functionality นี้ไว้ตั้งแต่แรก คุณจะสังเกตว่า prompt เปลี่ยนเป็น generic ค่อนข้าง ตอนนี้โดยไม่ทำอะไรเพิ่ม กด tab key สองครั้ง

คุณจะถูกถามว่าอยากแสดง possibilities กี่รายการ จึงควรกด y เพื่อทำ ตอนนี้คุณดูรายการทุกคำสั่งบนระบบ กด q เมื่อเจอคำสั่งที่หา นี่เหมือน suggestion list bash อื่นๆ ที่คุณเคยเห็น คุณ navigate ได้เหมือนเดิมโดยไม่มีปัญหา แตกต่างจากรายการก่อนหน้า รายการนี้จะ sorted จริงโดยไม่ต้อง pipe ไปอะไร

เมื่ออยากออกจาก session ใหม่ พิมพ์ exit และคุณจะกลับ prompt เดิม

ABOUT THE AUTHOR

ค้นพบทุกคำสั่ง Linux Shell ด้วยคำสั่งเดียว

Kevin Arrows

Kevin Arrows เป็นผู้เชี่ยวชาญเทคโนโลยีที่มีประสบการณ์และความรู้มากกว่าทศวรรษ เขาถือใบรับรอง Microsoft Certified Technology Specialist (MCTS) และมีความหลงใหลในการติดตามพัฒนาทางเทคโนโลยีล่าสุด Kevin เขียนมากมายเกี่ยวกับหัวข้อเทคโนโลยี แสดงความเชี่ยวชาญในด้านการพัฒนาซอฟต์แวร์ ความปลอดภัยไซเบอร์ และ cloud computing ผลงานของเขาได้รับการยอมรับและเคารพจากเพื่อนร่วมงาน และเขาถือว่าเป็นผู้สามารถอธิบายแนวคิดทางเทคนิคที่ซับซ้อนอย่างชัดเจนและกระชับ