ในยุคนี้คนส่วนใหญ่ที่ใช้คอมพิวเตอร์จะชินกับหน้าจอที่เป็นหน้าต่างแล้วใช้เมาส์กดคลิกเลือกคำสั่งต่างๆ
แม้แต่นักเขียนโปรแกรมเอง ส่วนใหญ่ก็น่าจะเริ่มฝึกจากการใช้พวกโปรแกรมสำเร็จรูปที่ประกอบด้วยหน้าต่างสำหรับแก้ข้อความ และปุ่มสั่งคอมไพล์หรือรันโปรแกรม
หน้าจอที่ประกอบไปด้วยหน้าต่างโปรแกรมต่างๆแล้วใช้เมาส์คลิกเลือกได้แบบนี้เรียกว่า
ส่วนต่อประสานกราฟิกกับผู้ใช้ (graphical user interface) มักเรียกเป็นตัวย่อว่า GUI
ส่วนต่อประสานกับผู้ใช้ (user interface) หมายถึงส่วนที่มีไว้สำหรับให้คนสามารถควบคุมคอมพิวเตอร์เพื่อทำอะไรต่างๆตามที่ต้องการได้
GUI เป็นรูปแบบหนึ่งของส่วนต่อประสานกับผู้ใช้ ซึ่งเป็นรูปแบบที่นิยมในยุคปัจจุบันและเหมาะกับผู้ใช้งานทั่วๆไป
แต่ว่าก่อนที่จะมี GUI นั้น ส่วนต่อประสานกับผู้ใช้จะอยู่ในรูปแบบ
คอมมานด์ไลน์ (command line) เป็นลักษณะหน้าจอที่มีแต่สีขาวดำและเต็มไปด้วยตัวหนังสือและมีช่องให้ป้อนคำสั่งอยู่ด้านล่างสุด
พูดถึงสิ่งนี้แล้วคนทั่วไปน่าจะนึกถึงช่างคอม หรือไม่ก็แฮกเกอร์ดังที่เห็นได้บ่อยๆตามหนัง
เพราะคนที่จะใช้งานคอมมานด์ไลน์ได้จะต้องเป็นคนที่มีความรู้คอมมาก จึงค่อนข้างเป็นที่ไม่คุ้นเคยนักสำหรับผู้ใช้งานคอมทั่วไปในปัจจุบัน
คอมมานด์ไลน์มีข้อดีคือทำงานได้เร็วกว่า ทำอะไรได้ยืดหยุ่นกว่า ถ้าหากใช้เป็น
ข้อเสียคือใช้งานยาก ต้องใช้เวลาในการเรียนรู้นานเพื่อจะใช้เป็น ทุกอย่างเป็นตัวหนังสือทำให้อาจนึกภาพได้ยาก เมาส์ก็ใช้ไม่ได้ ได้แต่กดแป้นพิมพ์ จึงไม่มีอิสระในการควบคุมมากนัก
เวลาคอมมีปัญหาแล้วเรียกช่างคอมมาถ้าหากปัญหาซับซ้อนมากเขาก็จะเปิดคอมมานด์ไลน์มาพิมพ์คำสั่งอะไรต่างๆเพื่อจัดการ เพราะคอมมานด์ไลน์ใช้ทำอะไรที่เป็นระดับสูงได้มากกว่า
เพียงแต่ก็มีความเสี่ยงสูง เพราะหากทำผิดพลาดขึ้นมาทีอาจถึงขั้นทำคอมพัง ต้องลงเครื่องใหม่ได้
งานอะไรที่สามารถทำได้ด้วย GUI ก็ใช้ GUI จะทั้งสะดวกกว่าและปลอดภัยกว่า งานอะไรที่เป็นระดับสูงขึ้นไปค่อยใช้คอมมานด์ไลน์
สำหรับนักเขียนโปรแกรมเองก็หากใช้พวก
สิ่งแวดล้อมสำหรับการพัฒนาแบบเบ็ดเสร็จ (integrated development environment, IDE) อย่างพวก microsof visual studio ก็สามารถทั้งเขียนและรันโปรแกรมได้โดยไม่ต้องยุ่งกับคอมมานด์ไลน์
แต่ถึงอย่างนั้นก็อาจมีบางสถานการที่จำเป็นต้องใช้ จะมากหรือน้อยก็แล้วแต่งานที่ทำ
โดยเฉพาะคนที่ใช้ linux จะมีความจำเป็นต้องใช้คอมมานด์ไลน์มากกว่าใน windows หรือ mac เนื่องจากมีระบบ GUI ที่ทำงานได้ไม่ทั่วถึงเท่า แม้แต่เวลาติดตั้งโปรแกรม ส่วนใหญ่ก็ยังต้องทำผ่านคอมมานด์ไลน์
คอมมานด์ไลน์จึงไม่ได้มีไว้สำหรับแค่ช่างคอมหรือแฮกเกอร์เท่านั้น
คำสั่งคอมมานด์ไลน์ที่ใช้นั้นจะต่างกันไปตามระบบปฏิบัติการ สำหรับ mac และ linux นั้นจะใช้เหมือนกันคือเป็น
เชลยูนิกซ์ (unix shell) ส่วน windows จะเป็น
คอมมานด์พร้อมปต์ (command prompt) หรือ
พาวเวอร์เชล (powershell)เชลยูนิกซ์เองก็ยังแบ่งย่อยออกเป็นหลายแบบ แต่ที่ใช้เป็นมาตรฐานทั้งใน mac และ linux ทั่วไปในปัจจุบันคือ
bash (Bourne Again SHell)เชลยูนิกซ์เป็นส่วนต่อประสานกับผู้ใช้ที่เริ่มใช้ในระบบปฏิบัติการ
ยูนิกซ์ (unix) ซึ่งเป็นที่นิยมมากในสมัยก่อน แม้ว่ายูนิกซ์จะหมดความนิยมไปแล้วแต่ก็เป็นรากฐานให้กับระบบปฏิบัติการยุคต่อมา
ระบบปฏิบัติการที่พัฒนาต่อยอดมาจากยูนิกซ์นั้นมักเรียกว่า
ระบบปฏิบัติการแบบยูนิกซ์ (unix-like operating system) ได้แก่ mac และ linux คอมมานด์ไลน์จึงใช้เชลยูนิกซ์เป็นหลัก
โดยทั่วไปแล้วการใช้งานใน mac และ linux จะมีความแตกต่างกันไปบ้าง แต่โดยรวมคำสั่งส่วนใหญ่ก็ใช้เหมือนกัน
วิธีการเปิดใช้งานคอมมานด์ไลน์ในปัจจุบันนี้ระบบปฏิบัติการที่นิยมใช้ในคอมพิวเตอร์ส่วนบุคคลอย่าง windows mac linux นั้นเปิดมาปกติจะเริ่มจากหน้าจอ GUI ดังนั้นการใช้งานคอมมานด์ไลน์จึงมักใช้ในลักษณะที่เป็นการเปิดหน้าต่างคอมมานด์ไลน์ขึ้นมา
นอกจากนี้แล้วยังมีอีกวิธีคือเปลี่ยนทั้งหน้าจอให้เป็นคอมมานด์ไลน์ไปเลย แต่ในที่นี้จะไม่พูดถึง
สำหรับใน windows ให้เปิดคอมมานด์พรอมปต์โดยไปที่
"เริ่มต้น" (รูปหน้าต่างมุมซ้ายล่าง) แล้วพิมพ์ค้น
cmd ก็จะมีคอมมานด์พรอมปต์ให้เลือก (ชื่อไทยใช้คำว่า
"พร้อมท์คำสั่ง")

เปิดขึ้นมาก็จะเจอหน้าจอประมาณนี้ สามารถพิมพ์คำสั่งได้

สำหรับการใช้เชลยูนิกซ์ใน mac หรือ linux นั้นโดยทั่วไปจะทำผ่านเทอร์มินัล (terminal)
สำหรับ mac วิธีการเปิดให้ไปที่ lunchpad แล้วกดเข้าไปที่ "อื่นๆ" จากนั้นเทอร์มินัลจะอยู่ข้างใน

สำหรับใน linux แต่ละรุ่นจะต่างกันออกไป แต่โดยส่วนใหญ่แล้วเทอร์มินัลจะอยู่ในเมนูโปรแกรมต่างๆ หาเจอได้ไม่ยาก
อันนี้เป็นตัวอย่างใน ubuntu 18 เลือกที่ "แสดงโปรแกรมต่างๆ" แล้วเลื่อนลงไปหน้าหลังเลือก "เทอร์มินัล"

เมื่อคลิกแล้วหน้าจอเชลก็จะถูกเปิดขึ้นมา แบบนี้

ทุกอย่างเริ่มต้นขึ้นจากหน้าจอตัวหนังสือนี้
เรื่องของวิธีการใช้เชลยูนิกซ์อ่านได้ในบทความต่อไป
https://phyblas.hinaboshi.com/20190125