Terminal ให้ Command Line Interface ควบคุมส่วนต่างๆ ของ macOS - ก็คือเข้าถึงคุณสมบัติ UNIX ที่อยู่เบื้องหลังหน้าตา macOS ที่นี่เราจะดูโปรเจกต์ต่างๆ ที่ลองทำได้ใน Terminal
ถ้าเพิ่งเริ่ม Terminal หรือต้องทบทวนคำสั่ง เริ่มต้นที่ดีที่สุดคือบทความแนะนำ: วิธีใช้ Terminal บน Mac
หมายเหตุ: ที่เห็น Square brackets ให้ใส่ Input ของคุณ เช่น File path หรือ URL โดยไม่ต้องใส่วงเล็บ
1. แสดงไฟล์และโฟลเดอร์ที่ซ่อน (Show hidden files and folders)
macOS สร้างไฟล์/โฟลเดอร์ซ่อนเพื่อหลายเหตุผล ส่วนใหญ่ไม่ต้องรู้ แต่ถ้าต้องหา ใช้ Terminal ได้ พิมพ์:
defaults write com.apple.finder AppleShowAllFiles -bool TRUE
killall Finder
เปลี่ยน TRUE เป็น FALSE เมื่อต้องการซ่อนอีกครั้ง
2. คัดลอกไฟล์จากโฟลเดอร์หนึ่งไปอีกโฟลเดอร์ (Copy files from one folder to another)
Option-drag drop คัดลอกไฟล์แบบเก่า ลองคำสั่ง Ditto ของ Terminal
พิมพ์: Ditto [original folder] [new folder]
'original folder' และ 'new folder' คือ File path ของต้นทางและปลายทาง ถ้าอยากเห็นชื่อไฟล์แต่ละไฟล์ระหว่างคัดลอก ใส่ '-v' หลัง Ditto (Verbose mode)

3. ดาวน์โหลดไฟล์โดยไม่ใช้ Browser (Download files without your browser)
มี URL ไฟล์ที่ต้องดาวน์โหลดแต่อยากไม่ใช้ Safari, Chrome, Firefox Terminal ช่วยได้ ใช้ 2 คำสั่ง: หนึ่งตั้งตำแหน่ง Terminal ไปที่ Downloads (หรือที่อื่น) อีกคำสั่งดาวน์โหลด ตั้งตำแหน่ง:
cd ~/Downloads/
ดาวน์โหลดไฟล์:
curl -O [the URL of the file]
4. ปิดเงา Drop Shadow บน Screenshot (Disable drop shadows on a screenshot)
กด Command-Shift-4 แล้ว Spacebar จับหน้าต่าง จะมี Drop shadow เพิ่ม ถ้าไม่ต้องการ ใช้คำสั่งนี้จับภาพโดยไม่มีเงา
$ defaults write com.apple.screencapture disable-shadow -bool TRUE
killall SystemUIServer
5. ป้องกันไม่ให้ Mac Sleep (Keep your Mac awake)
Override การตั้งค่า Sleep ใน Energy Preferences ด้วยคำสั่งเดียว
caffeinate
กด Ctrl-C เพื่อหยุด หรือตั้งเวลาแบบนี้
caffeinate -u -t [number of seconds]
6. ทำให้ Mac Restart เองหลัง Crash (Make your Mac automatically restart after a crash)
ตอน Mac ค้าง/แครช มักต้องกดค้าง Power button รอ Restart ใช้คำสั่งนี้ทำให้ Restart เองเมื่อตรวจพบ Crash
sudo systemsetup -setrestartfreeze on
7. ซ่อนแอปที่ไม่ได้ใช้งานใน Dock (Hide non-active apps in your Dock)
Dock แน่นเกินไป ใช้คำสั่งนี้แสดงเฉพาะแอปที่ใช้งานอยู่
defaults write com.apple.dock static-only -bool TRUE
killall Dock
8. ทำให้แอปที่ซ่อนใน Dock จางลง (Dull hidden apps in the Dock)
ไปไกลกว่านั้น ทำให้ Dock จางแอปที่ไม่อยู่บนหน้าจอ
defaults write com.apple.Dock showhidden -bool TRUE
killall Dock
9. ทำให้กดค้างปุ่มทำซ้ำตัวอักษร (Make holding down a key repeat characters)
นี่เป็นทริกที่เราชอบ ตอนกดค้างปุ่มบนคีย์บอร์ด Mac จะแสดง Pop-up ตัวอักษรเพิ่ม หรือไม่ทำอะไร นี่คือวิธีทำให้มันทำซ้ำตัวอักษรที่กด เช่นเดิม
defaults write -g ApplePressAndHoldEnabled -bool FALSE
ยกเลิกคำสั่ง: ใช้คำสั่งเดียวกัน แต่เปลี่ยน 'FALSE' เป็น 'TRUE'
10. ซ่อนไฟล์/โฟลเดอร์จาก Finder (Hide files and folders from view in the Finder)
chflags hidden [path of folder you want to hide]
11. เล่น Tetris, Pong, Snake และเกมอื่นๆ (Play Tetris, Pong, Snake and other games)
Emacs Text Editor ที่มาพร้อม macOS และรันจาก Terminal ได้ มี Easter eggs เป็นเกม
แสดงเกม: พิมพ์ Emacs Enter แล้ว Fn และ F10 แล้ว t แล้ว g
จะเห็นรายการเกม ใช้ Cursor keys เลือก

12. เขียน ASCII Art Banner (Write ASCII art banners)
พิมพ์: banner -w [the width of the banner in pixels] [your message]
13. เปิดเสียงชาร์จแบบ iOS (Enable an iOS-like power chime when connected to power)
ใช้คำสั่งนี้ทำให้ Mac เสียงดังแบบ iPhone ตอนเสียบชาร์จ
defaults write com.apple.PowerChime ChimeOnAllHardware -bool true; open /System/Library/CoreServices/PowerChime.app
14. ตรวจสอบ macOS Update บ่อยขึ้น (Check for macOS updates more often)
เปลี่ยนความถี่ตรวจสอบ macOS Update จากรายสัปดาห์เป็นรายวัน พิมพ์:
defaults write com.apple.SoftwareUpdate ScheduleFrequency -int 1
15. ดาวน์โหลดไฟล์โดยไม่ใช้ Browser (Download files without your browser)
ซ้ำของข้อ 3 - มี URL ไฟล์แต่อยากไม่ใช้ Browser Terminal ช่วยได้ 2 คำสั่ง: ตั้งตำแหน่ง Terminal ไปที่ Downloads (หรือที่อื่น) และดาวน์โหลด ตั้งตำแหน่ง:
cd ~/Downloads/
ดาวน์โหลดไฟล์:
curl -O [the URL of the file]
16. แสดงรายการไฟล์ในโฟลเดอร์ (List the Contents of a folder)
คำสั่ง 'ls' แสดงเนื้อหา Directory ใส่ '-R' จะขยาย Sub-folders ดูทั้งหมดในโฟลเดอร์ พิมพ์:
ls -R [the path of the directory]
17. กู้คืน Disk Image ไปยัง Volume ที่เชื่อมต่อ (Restore a disk image to a volume connected to your Mac)
ถ้ามี Disk Image ต้องสร้าง Volume จริง ใช้คำสั่ง:
$ sudo asr -restore -noverify -source /[path to diskimage] -target /[Volume you want to restore to]
18. ดูเนื้อหาไฟล์ใดๆ (View any file's contents)
ถ้าได้ไฟล์ที่เปิดไม่ได้บน Mac อาจเพราะไม่มีแอปเปิด หรือไฟล์เสีย สามารถดูเนื้อหาใน Terminal ได้ ไฟล์ Audio/Video ข้อความอาจไม่น่าเข้าใจ แต่อื่นๆ อาจอ่านได้พอ
พิมพ์: cat [file path]
Tip: แทนที่จะพิมพ์ Path เอง ให้ลากไฟล์วางบน Terminal หลังคำสั่ง
19. เปลี่ยนตำแหน่งบันทึก Screenshot เริ่มต้น (Change the default screenshot location)
เปลี่ยนที่เก็บ Screenshot ได้โดยพิมพ์:
defaults write com.apple.screencapture location [place where you want screen grabs saved]
กด Enter แล้ว:
killall SystemUIServer
กด Enter อีกครั้ง
20. หยุดไม่ให้แอปบันทึกไป iCloud โดยอัตโนมัติ (Stop apps from saving to iCloud by default)
บางแอป macOS เช่น TextEdit และ iWork บันทึกไป iCloud เริ่มต้น เปลี่ยนได้ด้วย:
defaults write NSGlobalDomain NSDocumentSaveNewDocumentsToCloud -bool false
กลับไป iCloud: ใช้คำสั่งเดียวกัน แต่ Flag เป็น 'true'
21. เปลี่ยนสิทธิ์ไฟล์ด้วย Terminal (How to alter file permissions using Terminal)

File Permissions ควบคุมผู้ใช้ไหนเข้าถึง/แก้ไขไฟล์โฟลเดอร์ได้ ปกติทำงานดี แต่บางครั้งผิดปกติ เช่น Copy ไฟล์ระหว่าง User account แล้วเปิดไม่ได้ใน Account ของคุณ
มี 2 คำสั่งเปลี่ยนสิทธิ์: chmod (แก้ไขสิทธิ์ทุกคนยกเว้น Owner) และ chown (มอบสิทธิ์ Owner ให้ User เฉพาะ)
เพื่อเปลี่ยนสิทธิ์ไฟล์ให้ใครเข้าถึง/อ่าน/แก้ไขได้ ใช้:
sudo chmod 777 path-to-file
path-to-file คือ Path ของไฟล์ที่ต้องการเปลี่ยน แทนพิมพ์ Path ให้ลากไฟล์วางบน Terminal เปลี่ยน 777 เป็น 644 เพื่อให้เข้าถึง/อ่านได้ แต่ห้ามแก้ไข
ถ้าต้องการเปลี่ยนสิทธิ์ทุกไฟล์ในโฟลเดอร์ ให้ลากโฟลเดอร์วางบน Terminal แทนไฟล์ และใส่ -R หลังคำสั่ง
เปลี่ยน Owner ของไฟล์เป็น Account ของคุณ ใช้:
sudo chown your-short-user-name path-to-file
22. เปลี่ยนค่าเริ่มต้น Screenshot บน Mac (Change the default for screen shots on the Mac)
ค่าเริ่มต้น Screenshot ใน OS X เป็น .png ปกติใช้ได้ แต่เปลี่ยนได้ ถ้าอยากเป็น JPEG พิมพ์:
defaults write com.apple.screencapture type JPG
เปลี่ยนเป็น PDF หรือ TIFF ได้ด้วยคำสั่งเดียวกัน แค่เปลี่ยน Format
เปลี่ยนชื่อไฟล์ Screenshot เริ่มต้น ใช้:
defaults write com.apple.screencapture name "the-name-you've-chosen"; killall SystemUIServer
แทน the-name-you've-chosen ด้วยชื่อที่ต้องการ Screenshot จะตั้งชื่อตามนั้นตามด้วยวันที่เวลา
23. ดู Star Wars แบบ ASCII (Watch an ASCII version of Star Wars)

นี้แค่เพื่อสนุก แต่สนุกมาก! มี Star Wars แบบ ASCII รันบน Telnet Server ในเนเธอร์แลนด์ ดูได้ด้วย:
telnet towel.blinkenlights.nl
หยุด: พิมพ์ Ctrl-] แล้ว 'quit'
24. เปิดใช้งาน Text Selection ใน Quick Look (Enable text selection in Quick Look)
Quick Look ดูเนื้อหาไฟล์เร็ว น่าสนใจ แม้วางไว้สำหรับรูปภาพ แต่อ่าน Text ได้ แต่ไม่สามารถ Select/Copy ได้ นี่คือคำสั่ง Terminal ช่วย:
defaults write com.apple.finder QLEnableTextSelection -bool TRUE; killall Finder
มีคู่มือเต็ม: วิธี Select และ Copy ข้อความจาก Quick Look Preview ใน OS X
25. ปิด Auto-restore ใน Preview ด้วย Terminal (Disable Auto-restore in Preview using Terminal on the Mac)

เคยเปิด Preview แล้วหน้าต่างเอกสารกระจายทั่วหน้าจอ? นั่นคือ Auto-restore ฟีเจอร์ตั้งแต่ Lion บันทึกสถานะ Preview ตอนปิด แล้วคืนสถานะเดิมตอนเปิดใหม่ ถ้าไม่ปิดเอกสารทั้งหมดก่อนออก จะเปิดซ้ำตอน Launch
ป้องกันไม่ให้เกิด และเปิด Preview โดยไม่มีเอกสาร ใช้คำสั่ง:
defaults write com.apple.Preview NSQuitAlwaysKeepsWindows -bool FALSE
กลับค่าเดิม: พิมพ์คำสั่งซ้ำ แทน FALSE ด้วย TRUE ทำอย่างเดียวกันใน QuickTime X: แทน com.apple.Preview ด้วย com.apple.QuickTimePlayerX
26. ทำให้ Dock Slide เร็วขึ้น (Make the Dock slide more quickly using Terminal on the Mac)
ถ้าใช้ Show/Hide Dock จะเห็น Delay ก่อน Dock Slide ออกมา ใช้คำสั่งนี้กำจัด Delay:
defaults write com.apple.dock autohide-delay -float 0
killall Dock
'0' คือ Delay ก่อน Slide ถ้าอยากลดแต่ไม่หาย ให้เปลี่ยน '0' เป็นค่าอื่น (วินาที)
กลับค่าเริ่มต้น:
defaults delete com.apple.dock autohide-delay
killall Dock
ยังปรับความเร็ว Slide ได้อีก โดยแก้ Delay อีกตัว เพื่อทำให้ทันที:
defaults write com.apple.dock autohide-time-modifier -float 0
killall Dock
เพิ่มความเร็ว 2 เท่า: ใส่ '0.5' คงเดิม: ใส่ '1'
27. เพิ่มข้อความในหน้าต่าง Login (Add a message to the login window)

ไม่ว่าจะปลอมคนอื่น ให้แรงใจตัวเอง หรือเหตุผลอื่น อาจอยากใส่ข้อความใน Login window ใน OS X ด้วย Terminal ทำได้ง่าย พิมพ์:
$ sudo defaults write /Library/Preferences/com.apple.loginwindow LoginwindowText "Your message here"
ครั้งหน้าที่ Log out หรือ Restart ข้อความจะปรากฏใน Login window ลบได้ด้วย:
$ sudo defaults delete /Library/Preferences/com.apple.loginwindow
28. ทำให้ Mac พูด (Make your Mac speak)
สั่งให้ Mac พูดอะไรก็ได้ในเสียงที่เลือกอยู่ ใช้คำสั่ง 'Say':
Say "whatever you want your Mac to say"
พอ Enter Mac จะพูดคำที่พิมพ์
29. กำจัด Dashboard (Get rid of Dashboard)

รับจริงๆ ใครใช้ Dashboard อีก? ส่วนใหญ่รู้จักจาก Mission Control ถ้าอยากหายไปเลย ใช้คำสั่ง:
defaults write com.apple.dashboard mcx-disabled -boolean TRUE
killall Dock
เอากลับมา: คำสั่งเดียวกัน แต่ TRUE เป็น FALSE
30. สร้าง Spotlight ใหม่ (Rebuild Spotlight)
Spotlight คือ Search tool ของ OS X น่าสนใจมาก บางครั้ง Corrupt หรือทำงานผิด แก้โดย Rebuild มีคำสั่ง Terminal สำหรับนี้:
sudo mdutil -E /Volumes/DriveName
'DriveName' คือชื่อ Volume ที่ต้องการ Rebuild Index 通常是 Startup volume ถ้ายังไม่เปลี่ยน ชื่อ 'Macintosh HD' หรือถ้ามี Volumes Mount บน Desktop ลาก Volume ที่ต้องการวางบน Terminal แทน '/Volumes/DriveName'
อ่านต่อ:
Automator ทำอะไรให้คุณได้บ้าง
Automator Workflows ยอดเยี่ยม
วิธีดูหน้าจอ Mac หรือ PC บน iPad