

screen linux คือ — คู่มือฉบับสมบูรณ์ 2026 | SiamCafe Blog
ในโลกของการจัดการเซิร์ฟเวอร์และการทำงานกับ Linux Terminal การรักษาเซสชันการทำงานให้คงอยู่และมีเสถียรภาพถือเป็นความท้าทายสำคัญ ไม่ว่าคุณจะเป็นผู้ดูแลระบบ (SysAdmin), นักพัฒนา (Developer), หรือผู้ที่ชื่นชอบ Linux การที่โปรเซสหรือเซสชันการทำงานถูกตัดขาด (disconnect) กระทันหันอาจหมายถึงการสูญเสียงานหลายชั่วโมงหรือแม้แต่การหยุดทำงานของบริการที่สำคัญ นี่คือจุดที่เครื่องมืออย่าง GNU Screen หรือที่เรียกกันทั่วไปว่า screen ปรากฏตัวขึ้นในฐานะฮีโร่ผู้ไร้ซึ่งหน้ากาก
Screen Linux คือ โปรแกรม Terminal Multiplexer ที่ทรงพลัง ซึ่งอนุญาตให้ผู้ใช้สามารถสร้างและจัดการหลายเซสชันเทอร์มินอลภายในหน้าต่างเทอร์มินอลเดียวหรือจากการเชื่อมต่อระยะไกลเพียงครั้งเดียว มันทำหน้าที่เสมือน “เลเยอร์” ที่อยู่ระหว่างเซสชันเทอร์มินอลของคุณกับระบบ ทำให้เซสชันสามารถทำงานต่อไปได้ในพื้นหลัง (detach) แม้ว่าคุณจะปิดเทอร์มินอลหรือตัดการเชื่อมต่อ SSH ออกไปแล้วก็ตาม และคุณสามารถกลับมาเชื่อมต่อ (reattach) ใหม่ได้ทุกเมื่อจากที่ใดก็ได้
คู่มือฉบับสมบูรณ์ปี 2026 นี้จะพาคุณดำดิ่งไปสู่โลกของ Screen ตั้งแต่พื้นฐานจนถึงเทคนิคขั้นสูง พร้อมด้วยแนวปฏิบัติที่ดีที่สุดและกรณีศึกษาในโลกจริง เพื่อให้คุณใช้ประโยชน์จากเครื่องมือคลาสสิคแต่ยังคงทันสมัยนี้ได้อย่างเต็มประสิทธิภาพ
Screen คืออะไร และเหตุใดจึงยังสำคัญในยุค 2026
GNU Screen ถูกพัฒนาขึ้นมาตั้งแต่ปี 1987 และแม้จะมีเครื่องมือใหม่อย่าง tmux ที่ได้รับความนิยมอย่างสูง แต่ Screen ยังคงครองใจผู้ใช้จำนวนมากด้วยความเรียบง่าย, เสถียรภาพ, และการทำงานที่ตรงไปตรงมา มันมักจะถูกติดตั้งมาให้โดย default ในหลายๆ การแจกจ่าย Linux ทำให้เป็นเครื่องมือที่พร้อมใช้ในสถานการณ์ฉุกเฉินเสมอ
แก่นแท้ของการทำงานของ Screen
Screen ทำงานโดยการสร้าง เดมอน (daemon) ที่คอยจัดการเซสชันและหน้าต่าง (windows) ภายในของมันเอง เมื่อคุณเริ่มเซสชัน screen ขึ้นมา ทุกกระบวนการที่คุณรันภายในนั้นจะถูกจัดการโดย screen daemon แทนที่จะเป็น shell โดยตรง นี่คือเหตุผลที่แม้คุณจะออกจากเทอร์มินอล เซสชันและกระบวนการทั้งหมดภายใน screen ยังคงทำงานต่อไปอย่างไม่รู้ตัว
เหตุผลที่ควรเรียนรู้ Screen ในปี 2026
- ความแพร่หลาย: มักมีอยู่แล้วในเซิร์ฟเวอร์เกือบทุกตัว โดยเฉพาะในสภาพแวดล้อมแบบ legacy หรือ minimal install
- ความเรียบง่าย: คำสั่งพื้นฐานเข้าใจง่ายและเพียงพอสำหรับการใช้งานทั่วไป
- น้ำหนักเบา: ใช้ทรัพยากรระบบน้อยมาก เหมาะสำหรับเซิร์ฟเวอร์ที่จำกัดทรัพยากร
- ความเข้ากันได้: ทำงานได้สม่ำเสมอเกือบทุกที่ โดยไม่ต้องปรับแต่ง config มากมาย
- สคริปต์และระบบอัตโนมัติ: ใช้ร่วมกับสคริปต์ได้ดีเยี่ยมสำหรับการติดตั้งหรือรันงานยาวๆ
เริ่มต้นใช้งาน Screen: การติดตั้งและคำสั่งพื้นฐาน
มาเริ่มต้นใช้งาน Screen กันตั้งแต่ขั้นตอนแรกกันเลย
การติดตั้ง Screen
ในระบบส่วนใหญ่ Screen มักจะติดตั้งไว้แล้ว คุณสามารถตรวจสอบได้ด้วยคำสั่ง screen --version หากยังไม่มี คุณสามารถติดตั้งได้ง่ายๆ ดังนี้
# บน Debian/Ubuntu และ derivatives
sudo apt update
sudo apt install screen
# บน RHEL/CentOS/Fedora
sudo yum install screen # สำหรับ RHEL/CentOS 7 หรือเก่ากว่า
sudo dnf install screen # สำหรับ RHEL/CentOS 8, Fedora
# บน Arch Linux
sudo pacman -S screen
# บน macOS ใช้ Homebrew
brew install screen
การเริ่มต้นและออกจาก Screen เบื้องต้น
คำสั่งพื้นฐานที่สุดคือเพียงพิมพ์ screen จากนั้นคุณจะเข้าสู่เซสชัน screen ใหม่ทันที หน้าตาจะเหมือนเทอร์มินอลปกติทุกประการ แต่ตอนนี้คุณอยู่ภายใต้การดูแลของ screen แล้ว
ความท้าทายแรกสำหรับผู้เริ่มต้นคือ “แล้วฉันจะออกจาก screen ยังไงโดยไม่ฆ่าเซสชัน?” คำตอบคือคุณต้อง “detach” ออกจากมัน โดยการกดปุ่มลัด (default คือ Ctrl-a d) ซึ่งหมายถึง:
- กดปุ่ม Ctrl ค้างไว้ แล้วกด a (คุณจะเห็นว่าไม่มีอะไรเปลี่ยนแปลงบนหน้าจอมากนัก)
- ปล่อยปุ่มทั้งสอง แล้วกด d (สำหรับ detach)
ทันทีนั้นคุณจะกลับสู่เทอร์มินอลเดิมก่อนเข้า screen ส่วนเซสชัน screen และทุกกระบวนการในนั้นยังคงทำงานอยู่เบื้องหลัง
คำสั่งพื้นฐานที่ต้องรู้
screen -S ชื่อเซสชัน– สร้างเซสชันใหม่และตั้งชื่อให้มัน (แนะนำให้ทำเสมอ)screen -lsหรือscreen -list– แสดงรายการเซสชัน screen ที่กำลังทำงานอยู่screen -r– เชื่อมต่อกลับ (reattach) ไปยังเซสชันที่ detach ไว้ (ใช้ได้เมื่อมีแค่เซสชันเดียว)screen -r ชื่อเซสชันหรือPID– เชื่อมต่อกลับไปยังเซสชันที่ระบุscreen -x– เข้าร่วม (attach) ไปยังเซสชันที่กำลังทำงานอยู่แล้ว (เหมาะสำหรับดูงานร่วมกัน)- Ctrl-a c – สร้างหน้าต่าง (window) ใหม่ภายในเซสชันปัจจุบัน
- Ctrl-a n – ไปยังหน้าต่างถัดไป (Next)
- Ctrl-a p – ไปยังหน้าต่างก่อนหน้า (Previous)
- Ctrl-a “ (double quote) – แสดงลิสต์หน้าต่างทั้งหมดให้เลือก
- Ctrl-a k – “ฆ่า” (kill) หน้าต่างปัจจุบัน (จะถามยืนยัน)
- Ctrl-a \ – ออกจาก screen และฆ่าเซสชันทั้งหมด (quit)
- Ctrl-a ? – แสดงหน้าช่วยเหลือ (help) ของปุ่มลัดทั้งหมด
การใช้งาน Screen ขั้นสูง: การกำหนดค่าและเทคนิคพิเศษ
เมื่อคุ้นเคยกับพื้นฐานแล้ว การกำหนดค่าและใช้เทคนิคขั้นสูงจะช่วยเพิ่มประสิทธิภาพการทำงานได้อย่างมหาศาล
การกำหนดค่าผ่านไฟล์ .screenrc
คุณสามารถปรับแต่งพฤติกรรมและคีย์ลัดของ Screen ได้โดยสร้างไฟล์ชื่อ ~/.screenrc ต่อไปนี้คือตัวอย่างการตั้งค่าที่เป็นประโยชน์
# ~/.screenrc - ตัวอย่างการตั้งค่า
# ตั้งค่า Escape key (จาก Ctrl-a เป็น Ctrl-b เพื่อหลีกเลี่ยงการชนกับ Bash)
# escape ^Bb
# ตั้ง Status Bar ด้านล่างให้แสดงข้อมูล
hardstatus alwayslastline
hardstatus string '%{= kG}[ %{G}%H %{g}][%= %{= kw}%?%-Lw%?%{r}(%{W}%n*%f%t%?(%u)%?%{r})%{w}%?%+Lw%?%?%= %{g}][%{B} %m/%d %{W}%c %{g}]'
# เริ่มต้นด้วยการแสดง splash screen
startup_message off
# กำหนด buffer scrollback ให้ใหญ่ขึ้น (สามารถเลื่อนดูย้อนหลังได้มาก)
defscrollback 5000
# ตั้งค่าให้ shell ใหม่เริ่มต้นใน directory เดียวกับหน้าต่างปัจจุบัน
chdir
# เปิดใช้งาน visual bell แทนเสียง beep
vbell on
# ตั้งค่าการแจ้งเตือนเมื่อมีกิจกรรมในหน้าต่างที่ไม่ได้ active
activity "Activity in %n(%t)"
# กำหนดคีย์ลัดแบบง่าย
bind = resize =
bind + resize +1
bind - resize -1
bind _ resize max
การแบ่งหน้าจอ (Split Screen) แบบพื้นฐาน
Screen รองรับการแบ่งหน้าจอภายในออกเป็นหลายภูมิภาค (regions) แม้จะไม่ซับซ้อนเท่า tmux แต่ก็มีประโยชน์มาก
- Ctrl-a S (Shift+s) – แบ่งหน้าจอในแนวนอน
- Ctrl-a | (หรือ Ctrl-a V) – แบ่งหน้าจอในแนวตั้ง
- Ctrl-a Tab – สลับโฟกัสระหว่าง region
- Ctrl-a X – ปิด region ปัจจุบัน
- Ctrl-a Q – ปิด region ทั้งหมดยกเว้น region ปัจจุบัน
หลังจากแบ่ง region แล้ว คุณสามารถสร้างหน้าต่างใหม่หรือสลับไปยังหน้าต่างที่มีอยู่เพื่อแสดงใน region นั้นๆ ได้
การทำงานร่วมกัน (Multi-User Session)
หนึ่งในคุณสมบัติที่ทรงพลังของ Screen คือการอนุญาตให้หลายผู้ใช้เชื่อมต่อเข้าสู่เซสชันเดียวกันพร้อมกัน เหมาะสำหรับการ debugging ร่วมกัน หรือการสอน
# ขั้นตอนที่ 1: ผู้ใช้หลักสร้างเซสชันแบบ multi-user
screen -S shared_session
# จากนั้นภายใน screen ให้กด Ctrl-a แล้วพิมพ์ :multiuser on
# ตามด้วย :acladd username2 # เพื่อให้สิทธิ์ผู้ใช้อื่น
# ขั้นตอนที่ 2: ผู้ใช้ที่สองเชื่อมต่อเข้ามา
# ผู้ใช้ที่สองต้องมีสิทธิ์ในการอ่าน/เขียนเซสชันนั้น (ผ่าน screen -x หรือ sudo)
screen -x username1/shared_session
Screen vs Tmux: การเปรียบเทียบและเลือกใช้ให้เหมาะกับงาน
การถกเถียงระหว่าง Screen และ Tmux เป็นหัวข้อคลาสสิกในชุมชน Linux ตารางเปรียบเทียบต่อไปนี้จะช่วยให้คุณตัดสินใจเลือกใช้ได้อย่างเหมาะสมกับความต้องการของคุณ
| คุณลักษณะ | GNU Screen | Tmux |
|---|---|---|
| ความเรียบง่าย | ✅ ชนะเด็ดขาด การติดตั้งและใช้งานพื้นฐานง่ายมาก | การตั้งค่าเริ่มต้นและคอนฟิกรู้สึกซับซ้อนกว่า |
| การกำหนดค่า | ใช้ไฟล์ .screenrc ที่ syntax เรียบง่าย | ✅ ทรงพลังกว่า ด้วยไฟล์ .tmux.conf ที่ยืดหยุ่นและมีฟีเจอร์ล้ำกว่า |
| การแบ่งหน้าจอ (Panes) | มีฟีเจอร์พื้นฐาน (regions) แต่จัดการไม่สะดวกเท่า | ✅ ชนะเด็ดขาด การจัดการ panes เป็นธรรมชาติและมีเครื่องมือช่วยมากกว่า |
| สคริปต์และระบบอัตโนมัติ | ✅ ดีเยี่ยมสำหรับการรันสคริปต์แบบ headless ง่ายๆ | ดีมาก แต่ syntax ซับซ้อนกว่าเล็กน้อย |
| ความแพร่หลาย | ✅ มักติดตั้งมาพร้อมระบบโดย default | ต้องติดตั้งเพิ่มในหลายกรณี |
| ประสิทธิภาพและความเร็ว | เร็วและน้ำหนักเบามาก | ✅ เร็วมากเช่นกัน และจัดการเซสชันจำนวนมากได้ดีกว่า |
| ชุมชนและการพัฒนาต่อ | พัฒนาช้า แต่เสถียรสุดๆ | ✅ พัฒนาอย่างต่อเนื่อง มีฟีเจอร์ใหม่ๆ ออกมาเรื่อยๆ |
| เหมาะกับ | ผู้เริ่มต้น, SysAdmin ที่ทำงานกับเซิร์ฟเวอร์หลากหลาย, งานที่ต้องการความเรียบง่ายและความแน่นอน | ผู้ใช้ขั้นสูง, Developer ที่ทำงานบนเครื่องเดียวเป็นหลัก, ผู้ที่ต้องการปรับแต่งสูง |
คำแนะนำ: หากคุณทำงานกับเซิร์ฟเวอร์หลายตัวโดยเฉพาะเซิร์ฟเวอร์ของลูกค้าหรือเซิร์ฟเวอร์เก่า การเชี่ยวชาญ Screen เป็นสิ่งจำเป็นเพราะคุณมักพบมันอยู่แล้ว ในทางกลับกัน หากคุณทำงานบนสภาพแวดล้อมส่วนตัวหรือทีมที่สามารถกำหนดมาตรฐานร่วมกันได้ Tmux อาจให้ประสบการณ์ที่ดียิ่งขึ้น
กรณีศึกษาในโลกจริง (Real-World Use Cases)
มาดูตัวอย่างการนำ Screen ไปประยุกต์ใช้ในสถานการณ์จริงที่จะทำให้คุณเห็นภาพชัดเจนขึ้น
Use Case 1: การติดตั้งซอฟต์แวร์หรือกระบวนการที่ใช้เวลานานบนเซิร์ฟเวอร์
คุณต้องคอมไพล์โปรแกรมขนาดใหญ่จากซอร์สโค้ดบนเซิร์ฟเวอร์ระยะไกล ซึ่งอาจใช้เวลาหลายชั่วโมง
# 1. SSH เข้าเซิร์ฟเวอร์
ssh user@remote-server
# 2. เริ่ม screen session และตั้งชื่อให้จำง่าย
screen -S compile_nginx
# 3. ดาวน์โหลดและคอมไพล์ (ตัวอย่าง)
wget http://nginx.org/download/nginx-1.24.0.tar.gz
tar -xzf nginx-1.24.0.tar.gz
cd nginx-1.24.0
./configure --with-http_ssl_module
make # กระบวนการนี้จะใช้เวลานาน!
# 4. Detach จาก screen (Ctrl-a d) และออกจาก SSH ได้เลย
# คุณสามารถปิดแล็ปท็อปกลับบ้านได้ กระบวนการ compile ยังทำงานต่อบนเซิร์ฟเวอร์
# 5. เช้าวันต่อมา เชื่อมต่อ SSH ใหม่และ reattach เพื่อดูผลลัพธ์
ssh user@remote-server
screen -r compile_nginx
Use Case 2: การตรวจสอบ Log ไฟล์หลายไฟล์พร้อมกัน
ในฐานะผู้ดูแลระบบ คุณต้องคอยดู log หลายไฟล์ เช่น access log, error log และ log ของแอปพลิเคชัน
- สร้างเซสชัน screen ชื่อ
monitor_logs - ภายในเซสชัน สร้างหน้าต่าง 3 หน้าต่าง (Ctrl-a c สองครั้ง)
- หน้าต่างที่ 1: รัน
tail -f /var/log/nginx/access.log - หน้าต่างที่ 2: สลับไป (Ctrl-a n) แล้วรัน
tail -f /var/log/nginx/error.log - หน้าต่างที่ 3: สลับไป แล้วรัน
tail -f /var/log/myapp/app.log - คุณสามารถสลับดูระหว่าง log ต่างๆ ได้ง่ายๆ ด้วย Ctrl-a n หรือ Ctrl-a p หรือดูลิสต์ทั้งหมดด้วย Ctrl-a “
Use Case 3: การรันเซิร์ฟเวอร์หรือกระบวนการที่ต้องทำงานต่อเนื่อง
การรัน Minecraft server, IRC bouncer (เช่น ZNC), หรือบอทต่างๆ ที่ต้องออนไลน์ตลอดเวลา Screen เป็นตัวเลือกที่สมบูรณ์แบบ
# สคริปต์ start_server.sh
#!/bin/bash
screen -dmS minecraft_server java -Xmx1024M -Xms1024M -jar server.jar nogui
# คำสั่งนี้จะสร้างเซสชัน screen ในโหมด detached (-d) ทันที และรันคำสั่งภายในนั้น
# เซิร์ฟเวอร์จะทำงานในพื้นหลังโดยอัตโนมัติ
# เพื่อจัดการเซิร์ฟเวอร์ในภายหลัง
screen -r minecraft_server # เพื่อเข้าดูและสั่งคำสั่งใน console
# Ctrl-a d เพื่อ detach ออกมาใหม่โดยให้เซิร์ฟเวอร์ทำงานต่อ
แนวปฏิบัติที่ดีที่สุด (Best Practices) สำหรับการใช้ Screen อย่างมีประสิทธิภาพ
- ตั้งชื่อเซสชันเสมอ: ใช้
screen -S meaningful_nameการมีชื่อช่วยให้คุณจัดการเซสชันจำนวนมากได้ง่ายเมื่อต้อง reattach - ใช้ .screenrc เพื่อปรับแต่ง: อย่างน้อยควรตั้ง status bar และ scrollback buffer ให้เหมาะสมกับงานของคุณ
- ล็อกอินก่อนเข้า screen: ตรวจสอบให้แน่ใจว่าคุณอยู่ใน directory ที่ถูกต้องและสภาพแวดล้อม shell ที่เหมาะสมก่อนสร้าง screen session
- จัดการหน้าต่างอย่างเป็นระบบ: ตั้งชื่อหน้าต่าง (Ctrl-a A) เมื่อคุณมีหลายหน้าต่างในเซสชันเดียวกัน เพื่อให้รู้ว่ากำลังทำอะไรอยู่
- ใช้การแจ้งเตือน (monitoring): เปิดใช้งาน ‘activity’ และ ‘bell’ ใน .screenrc เพื่อให้รู้เมื่อมี output ใหม่ในหน้าต่างที่ไม่ได้ active
- บันทึกเซสชันเป็นระยะ (logging): คุณสามารถบันทึก output ของหน้าต่างได้ด้วย Ctrl-a H (Shift+h) หรือเริ่ม screen ด้วย
screen -Lเพื่อบันทึก log ไปยังไฟล์ - ทำความสะอาดเซสชันที่ตายแล้ว: ใช้
screen -wipeเป็นระยะเพื่อลบเซสชันที่เสียหายหรือไม่จำเป็นออกจากลิสต์ - ฝึกจำคีย์ลัดหลักๆ: Ctrl-a d, Ctrl-a c, Ctrl-a n, Ctrl-a “, Ctrl-a ? เป็นคีย์ลัดขั้นต่ำที่ควรจำให้ได้
ปัญหาที่พบบ่อยและการแก้ไข (Troubleshooting)
| อาการปัญหา | สาเหตุที่เป็นไปได้ | วิธีแก้ไข |
|---|---|---|
“There is no screen to be resumed.” เมื่อรัน screen -r |
ไม่มีเซสชันที่ถูก detach ไว้ หรือเซสชันถูก kill ไปแล้ว | รัน screen -ls เพื่อตรวจสอบว่ามีเซสชันอยู่จริงหรือไม่ หากไม่มี ให้สร้างใหม่ |
| “There are several suitable screens…” | มีเซสชันที่ถูก detach ไว้มากกว่าหนึ่งเซสชัน | ใช้ screen -r ชื่อเซสชัน หรือ screen -r PID เพื่อระบุเจาะจง |
| ไม่สามารถพิมพ์หรือคีย์ลัดไม่ทำงานใน screen | Screen session อาจอยู่ใน “flow control” mode (Ctrl-s) โดยไม่ได้ตั้งใจ | กด Ctrl-q เพื่อปลดล็อกการส่งข้อมูล |
| สีสันใน terminal ผิดเพี้ยน | Screen อาจไม่ได้ตั้งค่า TERM variable ไว้ถูกต้อง | ภายใน screen ให้ลองพิมพ์ export TERM=xterm-256color หรือปรับใน .screenrc ด้วยคำสั่ง term xterm-256color |
| เซสชัน screen หายหลังจากรีบูตเซิร์ฟเวอร์ | Screen เป็นโปรแกรมผู้ใช้ ไม่ใช่เซอร์วิสระบบ เซสชันจะตายเมื่อระบบปิดตัวลง | สำหรับกระบวนการที่ต้องรันตลอดเวลา ให้พิจารณาใช้ systemd service แทน หรือใช้สคริปต์ restart screen session เมื่อบูตระบบ |
| คีย์ลัด Ctrl-a ขัดกับคีย์ลัดของ Bash (เคลื่อนカーเซอร์ไปหน้าจอ) | คีย์ลัดซ้ำกัน | เปลี่ยน escape key ของ screen ใน .screenrc เป็นอย่างอื่น เช่น escape ^Bb (ใช้ Ctrl-b แทน) |
Summary
GNU Screen ยังคงเป็นเครื่องมือที่ทรงคุณค่าและมีความเกี่ยวข้องในปี 2026 สำหรับทุกคนที่ทำงานกับ Linux command line โดยเฉพาะในสภาพแวดล้อมเซิร์ฟเวอร์ระยะไกล ความสามารถหลักในการรักษาเซสชันการทำงานให้คงอยู่แม้จะตัดการเชื่อมต่อ การจัดการหลายหน้าต่างในเซสชันเดียว และความเรียบง่ายที่ทำให้เริ่มต้นได้ทันที ล้วนเป็นเหตุผลที่ทำให้ Screen ยังคงถูกบรรจุอยู่ในเครื่องมือจำเป็นของผู้ดูแลระบบและนักพัฒนาจำนวนมาก แม้ว่าจะมีคู่แข่งอย่าง tmux ที่มีฟีเจอร์ล้ำกว่าในบางด้าน แต่ความแพร่หลายและความไม่ต้องพึ่งพาการตั้งค่าที่ซับซ้อนของ Screen ก็ทำให้มันเป็น “สวิสอาร์มีมีด” ที่เชื่อถือได้ในกล่องเครื่องมือของคุณ การเรียนรู้ Screen ไม่เพียงเพิ่มทักษะการจัดการเซิร์ฟเวอร์ให้คุณ แต่ยังให้ความเข้าใจพื้นฐานเกี่ยวกับการทำงานของ terminal multiplexer ซึ่งจะทำให้การเรียนรู้เครื่องมือที่ซับซ้อนยิ่งขึ้นในอนาคตเป็นเรื่องง่ายดาย เริ่มต้นด้วยการตั้งชื่อเซสชันทุกครั้ง สร้างไฟล์ .screenrc ของคุณเอง และฝึกใช้คีย์ลัดให้คล่อง คุณจะพบว่า Screen ไม่ใช่แค่เครื่องมือ แต่เป็นพันธมิตรที่ช่วยให้งานบน command line มีประสิทธิภาพและไร้ซึ่งความกังวลต่อการตัดขาดของการเชื่อมต่อ