5 เหตุผลในการเริ่มใช้ Linux Command Line
คุณสามารถใช้ Linux ได้โดยไม่ต้องเชี่ยวชาญบรรทัดคำสั่งและยุ่งกับหน้าต่างเทอร์มินัล แต่ถ้าคุณทำเช่นนั้น คุณจะพลาดความเร็ว พลัง และการควบคุมแบบละเอียดระดับต่ำของบรรทัดคำสั่ง
เอะอะเกี่ยวกับอะไร?
บางคนก็สาบาน บางคนก็สาบาน เรากำลังพูดถึงบรรทัดคำสั่ง ซึ่งเป็นอินเทอร์เฟซระหว่างมนุษย์กับคอมพิวเตอร์ที่มีมายาวนานกว่าห้าสิบปีและยังคงไม่ไปไหนในเร็วๆ นี้ แม้ในโลกปัจจุบันที่มีอินเทอร์เฟซแบบกราฟิกและความสะดวกสบายบนหน้าจอสัมผัส แต่ก็ยังมีที่สำหรับบรรทัดคำสั่ง
ย้อนกลับไปเมื่อ Unix ได้รับการพัฒนาในช่วงปลายทศวรรษ 1960 และต้นทศวรรษ 1970 ไม่มีสิ่งใดเป็นอินเทอร์เฟซผู้ใช้แบบกราฟิก (GUI) หรือสภาพแวดล้อมเดสก์ท็อป (DE) การพิมพ์เป็นเพียงเกมเดียวในเมือง หากคุณต้องการโต้ตอบกับคอมพิวเตอร์ คุณใช้แป้นพิมพ์ และคุณไม่ต้องคิดซ้ำอีก
สิ่งนี้มีผลกระทบต่อการออกแบบ เนื่องจากคุณถูกจำกัดให้พิมพ์เท่านั้น การกำหนดค่า การทำงาน และการดูแลระบบของคอมพิวเตอร์ทุกด้านจึงต้องสามารถควบคุมได้ด้วยการพิมพ์คำสั่ง นั่นเป็นเรื่องจริงสำหรับ Unix เมื่อครึ่งศตวรรษก่อน และยังคงเป็นจริงสำหรับ Linux ในปัจจุบัน คุณสามารถทำอะไรก็ได้จากบรรทัดคำสั่ง ไม่มีอะไรอยู่นอกเหนือการเข้าถึงของคุณ
ปัจจุบัน Linux ยังคงเป็นระบบปฏิบัติการที่ขับเคลื่อนด้วยคีย์บอร์ด คุณสามารถมีระบบ Linux ที่สมบูรณ์ทำงานได้โดยไม่ต้องใช้สภาพแวดล้อมเดสก์ท็อป และเซิร์ฟเวอร์จำนวนมากก็ถูกนำมาใช้ในลักษณะนั้น แน่นอนว่าบนเดสก์ท็อป ผู้ใช้ส่วนใหญ่มี DE
เปิดหน้าต่างเทอร์มินัลแล้วคุณสามารถเข้าถึงบรรทัดคำสั่งได้อย่างสมบูรณ์ ซึ่งหมายความว่าคุณสามารถเข้าถึงคำสั่ง Linux ทั้งหมดและทุกการตั้งค่าที่ควบคุมการติดตั้ง Linux ของคุณ
1. พัฒนาทักษะการบริหารระบบของคุณ
หากคุณกำลังจะดูแลระบบ Linux แม้จะโดยไม่ได้ตั้งใจสำหรับเพื่อน ครอบครัว และเพื่อนร่วมงาน คุณจะต้องเจอกับการแจกแจงแบบต่างๆ มากมาย และ DE ที่หลากหลายด้วย
การใช้บรรทัดคำสั่งช่วยให้คุณทำสิ่งที่คุณไม่สามารถทำได้ผ่าน GUI ของแอปพลิเคชันหรือผ่านการตั้งค่า DE เอง แอปพลิเคชัน DE และกราฟิกเป็นชั้นของนามธรรมระหว่างคุณกับ Linux อาจมีเครื่องมือที่จะช่วยคุณจัดการการติดตั้ง Linux แต่เครื่องมือเหล่านั้นจะไม่มีความเที่ยงตรงเหมือนบรรทัดคำสั่ง
คำสั่ง Linux สามารถมีตัวเลือกได้มากมาย ยิ่งคำสั่งซับซ้อนมากเท่าไร ตัวเลือกทั้งหมดเหล่านั้นก็จะมีโอกาสถูกจำลองแบบในเครื่องมือ GUI น้อยลงเท่านั้น นอกจากนี้ DE แต่ละแห่งก็จะมีแอปพลิเคชันของตัวเองและวิธีการทำสิ่งต่าง ๆ ของตัวเอง แทนที่จะเรียนรู้วิธี GUI สำหรับ DE ทั้งหมด การเปิดหน้าต่างเทอร์มินัลแล้วพิมพ์คำสั่ง Universal Linux ที่ทำงานได้ทุกที่จะง่ายกว่า หากมีเครื่องมือบรรทัดคำสั่งที่ไม่รวมอยู่ในการแจกจ่ายเฉพาะ คุณสามารถติดตั้งได้อย่างรวดเร็ว
บางครั้งก็มีทางเลือกสำหรับคุณ การรู้วิธีทำสิ่งต่างๆ บนบรรทัดคำสั่งเป็นวิธีเดียวที่จะจัดการเซิร์ฟเวอร์แบบ headless ที่ไม่ได้ติดตั้ง DE ไว้ หรือเครื่องระยะไกลเมื่อคุณมีสิทธิ์เข้าถึง SSH เท่านั้น
2. เพิ่มประสิทธิภาพ
คำสั่ง Linux สามารถมีได้หลายตัวเลือก มันคือสิ่งที่ทำให้พวกเขาแม่นยำ เลือกตัวเลือกที่ทำสิ่งที่คุณต้องการและนั่นคือสิ่งที่จะทำ และคำสั่ง Linux ได้รับการออกแบบให้ทำงานร่วมกัน พวกเขาสามารถสร้างเอาต์พุตที่คำสั่งอื่นยอมรับเป็นอินพุต
การเชื่อมโยงคำสั่งเข้าด้วยกันในลักษณะนี้เรียกว่าการวางท่อ คำสั่งนี้จะส่งคืนรายการนามสกุลไฟล์ในไดเร็กทอรีปัจจุบัน และหมายเลขของประเภทไฟล์แต่ละประเภท Linux ไม่มีคำสั่งสำหรับสิ่งนี้ แต่คุณสามารถรวมเข้าด้วยกันได้อย่างง่ายดายโดยใช้คำสั่ง Linux ที่มีอยู่
ls | rev | cut -d'.' -f1 | rev | sort | uniq -c | sort -r
ls แสดงรายการไฟล์ ชื่อไฟล์จะถูกป้อนเข้าไปในคำสั่ง rev โดยกลับอักขระในแต่ละชื่อ คำสั่ง cut จะตัดทอนแต่ละชื่อหลังจากช่วงแรกที่พบ ถ้ามี การแก้ไขครั้งที่สองจะคืนค่าสตริงกลับสู่ลำดับเดิม นี่จะให้รายการส่วนขยายแก่เรา รายการจะถูกจัดเรียง และ uniq จะนับจำนวนไฟล์นามสกุลที่ไม่ซ้ำกันแต่ละไฟล์ จากนั้นรายการจะถูกจัดเรียงอีกครั้งโดยเรียงลำดับจากมากไปน้อย
เยี่ยมมาก แต่มันมีอะไรให้จดจำอีกมาก โดยเฉพาะคำสั่งที่มีตัวเลือกมากมาย
นั่นคือสิ่งที่นามแฝงช่วย นามแฝงช่วยให้คุณเลือกชื่อที่น่าจดจำสำหรับคำสั่งแบบกำหนดเองที่เรียกใช้บรรทัดคำสั่งที่ซับซ้อนสำหรับคุณ นามแฝงสามารถรับพารามิเตอร์ได้เช่นกัน หากบรรทัดคำสั่งของคุณเป็นเหมือนรูทีนเล็กๆ มากกว่าบรรทัดคำสั่งเดียว คุณสามารถเปลี่ยนให้เป็นฟังก์ชันเชลล์ได้
หากคุณต้องการบันทึกเอาต์พุตแบบถาวร คุณสามารถเปลี่ยนเส้นทางเอาต์พุตไปยังไฟล์แทนหน้าต่างเทอร์มินัลได้ การเพิ่ม "> file-count.txt" ต่อท้ายคำสั่งจะสร้างไฟล์ชื่อ file-count.txt ซึ่งมีข้อความที่จะไปที่หน้าต่างเทอร์มินัล
ls | rev | cut -d'.' -f1 | rev | sort | uniq -c | sort -r > file-count.txt
การรวมคำสั่งเข้าด้วยกันและการแบ่งลำดับคำสั่งจะช่วยเพิ่มประสิทธิภาพของคุณได้อย่างมาก โดยใช้เวลาจดจำน้อยลงและพิมพ์น้อยลง
3. ทำงานอัตโนมัติ
เมื่อคำสั่งของคุณจัดลำดับฟังก์ชันนอกเชลล์ คุณสามารถแปลงให้เป็นสคริปต์ และสร้างโปรแกรมภาษาเชลล์ทั้งหมดได้
คุณสามารถบรรลุผลสำเร็จด้วยสคริปต์ได้อย่างไม่จำกัด คำสั่งใดๆ ที่คุณสามารถใช้บนบรรทัดคำสั่งสามารถใช้ได้ในสคริปต์ ควบคู่ไปกับโครงสร้างภาษาเชลล์ เช่น การทดสอบและการเปรียบเทียบ ลูป และคำสั่ง case
งานที่น่าเบื่อและซ้ำซากสามารถทำได้โดยการรันสคริปต์แทน หากสคริปต์จำเป็นต้องทำงานในเวลาใดเวลาหนึ่งหรือด้วยความถี่ที่แน่นอน คุณสามารถตั้งค่าให้เปิดสคริปต์โดยอัตโนมัติโดยใช้ตัวจับเวลา systemd
4. แก้ไขปัญหา
การแก้ไขปัญหาเกี่ยวกับคอมพิวเตอร์ของคุณได้รับการสนับสนุนเป็นอย่างดีบนบรรทัดคำสั่งของ Linux การทำเช่นนี้หมายความว่าคุณหลีกเลี่ยงความยุ่งเหยิงของ GUI และจัดการกับระบบโดยตรง
Linux บันทึกเหตุการณ์และกระบวนการทุกประเภท รวมถึงกระบวนการบูตด้วย เหตุการณ์บันทึกทั้งหมดสามารถเข้าถึงได้ผ่าน systemd Journalctl
คุณสามารถเจาะลึกปัญหาฮาร์ดแวร์โดยใช้เครื่องมือเช่น lshw, lsblk และ lscpu และตรวจสอบปัญหาระบบไฟล์ด้วย fsck และปัญหาการบูตด้วย GRUB
sudo lshw
ปัญหาเครือข่ายและ DNS สามารถตรวจสอบได้ด้วย ip, dig, โฮสต์ และ nslookup
ปัญหาด้านประสิทธิภาพสามารถระบุได้โดยใช้ top หรือ htop, iostat, vmstat และ netstat
5. เข้าถึงระบบระยะไกล
คุณสามารถเข้าสู่ระบบคอมพิวเตอร์ Linux ระยะไกลได้โดยใช้การเชื่อมต่อ SSH ซึ่งจะทำให้คุณมีหน้าต่างเทอร์มินัลบนเครื่องระยะไกลบนเครื่องของคุณเอง ด้วยคีย์ SSH คุณสามารถตั้งค่าการเชื่อมต่อที่ปลอดภัยและไม่มีรหัสผ่าน
หากสิ่งที่คุณต้องทำคือถ่ายโอนไฟล์ คุณสามารถใช้ rsync เพื่อซิงโครไนซ์ไดเร็กทอรีหรือแผนผังไดเร็กทอรีทั้งหมด กลับไปกลับมาระหว่างคอมพิวเตอร์ของคุณกับคอมพิวเตอร์ระยะไกล แน่นอน คุณสามารถล้อมคำสั่ง rsync เหล่านี้ไว้ในนามแฝง ฟังก์ชันเชลล์ หรือสคริปต์ และรันคำสั่งเหล่านั้นโดยอัตโนมัติด้วยตัวจับเวลา systemd
เส้นโค้งการเรียนรู้นั้นคุ้มค่า ดำดิ่งเข้าไป แต่ก้าวตัวเอง คุณไม่จำเป็นต้องเรียนรู้ทุกอย่างในคราวเดียว แต่ข้อมูลทุกอย่างที่คุณรับมาจะกลายเป็นทรัพย์สินอีกอย่างหนึ่งในชุดเครื่องมือ Linux ของคุณ
ไม่มีใครเป็นช่างเครื่องที่ดีได้โดยไม่ต้องยกฝากระโปรงหน้า