คำสั่ง ls ใช้แสดงเนื้อหาของไดเรกทอรีที่ระบุ ในบทความนี้เราจะอธิบายตัวเลือกทั้งหมดที่ใช้กับคำสั่ง ls
ตัวเลือกของคำสั่ง ls
| ตัวเลือก | คำอธิบาย |
|---|---|
| -a | แสดงรายการทั้งหมด รวมถึงไฟล์ที่ขึ้นต้นด้วยจุด (dotfiles) |
| -A | แสดงรายการทั้งหมด ยกเว้น . และ .. |
| -c | จัดเรียงไฟล์ตามเวลาเปลี่ยนแปลง (change time) |
| -d | แสดงรายการไดเรกทอรี โดยไม่แสดงเนื้อหาภายใน |
| -h | แสดงขนาดในรูปแบบที่มนุษย์อ่านง่าย (เช่น K, M) |
| -H | เหมือน -h แต่ใช้กำลังของ 1000 แทน 1024 |
| -l | แสดงในรูปแบบรายละเอียด (long-listing format) |
| -o | รูปแบบ long-listing แต่ไม่แสดงข้อมูลกลุ่ม (group) |
| -r | แสดงในลำดับย้อนกลับ |
| -s | แสดงขนาดของแต่ละไฟล์ในหน่วยบล็อก |
| -S | จัดเรียงตามขนาดไฟล์ |
| --sort | จัดเรียงเนื้อหาตามคำระบุ (เช่น size, version, status) |
| -t | จัดเรียงตามเวลาปรับเปลี่ยนล่าสุด (modification time) |
| -u | จัดเรียงตามเวลาเข้าถึงล่าสุด (last access time) |
| -v | จัดเรียงตามเวอร์ชัน |
| -1 | แสดงไฟล์ละหนึ่งต่อบรรทัด |
แสดงรายการไฟล์
คำสั่ง ls แสดงเนื้อหาของไดเรกทอรีที่ระบุ โดยไม่รวม dotfiles ถ้าไม่ระบุไดเรกทอรี จะแสดงเนื้อหาของไดเรกทอรีปัจจุบันโดยค่าเริ่มต้น
ไฟล์ที่แสดงจะจัดเรียงตามตัวอักษรโดยค่าเริ่มต้น และจัดเรียงเป็นคอลัมน์ถ้าไม่พอดีในบรรทัดเดียว
ตัวอย่าง:
$ ls
apt configs Documents Music workspace bin Desktop git Pictures Public Videos
แสดงรายการไฟล์ในรูปแบบรายละเอียด (Long Listing Format)
ตัวเลือก -l ของคำสั่ง ls พิมพ์เนื้อหาของไดเรกทอรีที่ระบุในรูปแบบรายละเอียด ถ้าไม่ระบุไดเรกทอรี จะแสดงไดเรกทอรีปัจจุบันโดยค่าเริ่มต้น
ls -l /etc
ตัวอย่างผลลัพธ์:
total 1204
drwxr-xr-x 3 root root 4096 Apr 21 03:44 acpi
-rw-r--r-- 1 root root 3028 Apr 21 03:38 adduser.conf
drwxr-xr-x 2 root root 4096 Jun 11 20:42 alternatives
...
แสดง 10 ไฟล์ที่ปรับเปลี่ยนล่าสุด
คำสั่งต่อไปนี้จะแสดงสูงสุด 10 ไฟล์ที่ปรับเปลี่ยนล่าสุดในไดเรกทอรีปัจจุบัน โดยใช้รูปแบบรายละเอียด (-l) และจัดเรียงตามเวลา (-t)
ls -lt | head
แสดงไฟล์ทั้งหมดรวมถึง Dotfiles
Dotfile คือไฟล์ที่ชื่อขึ้นต้นด้วย . ซึ่งปกติจะถูกซ่อนโดย ls และไม่แสดง ยกเว้นจะขอให้แสดง ตัวอย่างเช่น ls ปกติจะไม่แสดง dot files:
$ ls
bin pki
ตัวเลือก -a หรือ --all จะแสดงไฟล์ทั้งหมด รวมถึง dotfiles
ตัวอย่าง:
$ ls -a
. .ansible .bash_logout .bashrc .. .bash_history .bash_profile bin pki
แสดงไฟล์ในรูปแบบต้นไม้ (Tree-Like Format)
คำสั่ง tree แสดงเนื้อหาของไดเรกทอรีที่ระบุในรูปแบบต้นไม้ ถ้าไม่ระบุไดเรกทอรี จะแสดงไดเรกทอรีปัจจุบันโดยค่าเริ่มต้น
ตัวอย่างผลลัพธ์:
$ tree /tmp
/tmp
├── 5037
├── adb.log
└── evince-20965
└── image.FPWTJY.png
ใช้ตัวเลือก -L ของคำสั่ง tree เพื่อจำกัดความลึกของการแสดง และตัวเลือก -d เพื่อแสดงเฉพาะไดเรกทอรี
ตัวอย่างผลลัพธ์:
$ tree -L 1 -d /tmp
/tmp
└── evince-20965
แสดงไฟล์เรียงตามขนาด
ตัวเลือก -S ของคำสั่ง ls จัดเรียงไฟล์ตามลำดับขนาดจากมากไปน้อย
$ ls -l -S ./Fruits
total 8
-rw-rw-rw- 1 root root 166703 Jan 28 00:09 apples.jpg
-rw-rw-rw- 1 root root 134270 Jan 28 00:09 kiwis.jpg
-rw-rw-rw- 1 root root 30134 Jan 28 00:09 bananas.jpg
เมื่อใช้ร่วมกับตัวเลือก -r ลำดับการจัดเรียงจะย้อนกลับ
$ ls -l -S -r ./Fruits
total 8
-rw-rw-rw- 1 root root 30134 Jan 28 00:09 bananas.jpg
-rw-rw-rw- 1 root root 134270 Jan 28 00:09 kiwis.jpg
-rw-rw-rw- 1 root root 166703 Jan 28 00:09 apples.jpg
สรุป
ในบทความนี้เราเรียนรู้ตัวเลือกต่างๆ ในการแสดงรายการไฟล์โดยใช้คำสั่ง ls