แสดงเอาต์พุตคำสั่งหรือเนื้อหาไฟล์ในรูปแบบคอลัมน์
คุณเบื่อกับการดูเอาต์พุตคำสั่งที่แออัดหรือเนื้อหาไฟล์บนเทอร์มินัลหรือไม่ บทความสั้นๆ นี้จะสาธิตวิธีการแสดงเอาต์พุตคำสั่งหรือเนื้อหาไฟล์ในรูปแบบ “เรียงตามคอลัมน์ ” ที่ชัดเจนมาก
เราสามารถใช้ยูทิลิตี คอลัมน์ เพื่อแปลงอินพุตมาตรฐานหรือเนื้อหาไฟล์เป็นรูปแบบตารางที่มีหลายคอลัมน์ เพื่อให้ได้ผลลัพธ์ที่ชัดเจน
อ่านเพิ่มเติม: 12 คำสั่งที่มีประโยชน์สำหรับการกรองข้อความเพื่อการทำงานของไฟล์อย่างมีประสิทธิภาพใน Linux
เพื่อให้เข้าใจได้ชัดเจนยิ่งขึ้น เราได้สร้างไฟล์ต่อไปนี้ “tecmint-authors.txt” ซึ่งประกอบด้วยรายชื่อผู้เขียน 10 อันดับแรก จำนวนบทความที่เขียน และจำนวนความคิดเห็นที่พวกเขาได้รับเกี่ยวกับบทความจนถึงขณะนี้ .
เพื่อสาธิตสิ่งนี้ ให้รันคำสั่ง cat ด้านล่างเพื่อดูไฟล์ tecmint-authors.txt
cat tecmint-authors.txt
ผลลัพธ์ตัวอย่าง
pos|author|articles|comments
1|ravisaive|431|9785
2|aaronkili|369|7894
3|avishek|194|2349
4|cezarmatei|172|3256
5|gacanepa|165|2378
6|marintodorov|44|144
7|babin lonston|40|457
8|hannyhelal|30|367
9|gunjit kher|20|156
10|jesseafolabi|12|89
เมื่อใช้ คำสั่งคอลัมน์ เราสามารถแสดงผลลัพธ์ที่ชัดเจนได้ดังต่อไปนี้ โดยที่ -t
ช่วยในการกำหนดจำนวนคอลัมน์ที่อินพุตมี และสร้างตารางและ -s
ระบุอักขระตัวคั่น
cat tecmint-authors.txt | column -t -s "|"
ผลลัพธ์ตัวอย่าง
pos author articles comments
1 ravisaive 431 9785
2 aaronkili 369 7894
3 avishek 194 2349
4 cezarmatei 172 3256
5 gacanepa 165 2378
6 marintodorov 44 144
7 babin lonston 40 457
8 hannyhelal 30 367
9 gunjit kher 20 156
10 jesseafolabi 12 89
ตามค่าเริ่มต้น แถว จะถูกเติมก่อนคอลัมน์ หากต้องการเติมคอลัมน์ก่อนเติมแถว ให้ใช้สวิตช์ -x
และเพื่อสั่งคำสั่งคอลัมน์ ให้พิจารณาบรรทัดว่าง (ซึ่งจะถูกละเว้นโดยค่าเริ่มต้น) รวมค่าสถานะ -e
นี่เป็นอีกตัวอย่างที่ใช้งานได้จริง รันสองคำสั่งด้านล่างและดูความแตกต่างเพื่อทำความเข้าใจเพิ่มเติมว่าคอลัมน์เวทย์มนตร์สามารถทำได้
mount
mount | column -t
ผลลัพธ์ตัวอย่าง
sysfs on /sys type sysfs (rw,nosuid,nodev,noexec,relatime)
proc on /proc type proc (rw,nosuid,nodev,noexec,relatime)
udev on /dev type devtmpfs (rw,nosuid,relatime,size=4013172k,nr_inodes=1003293,mode=755)
devpts on /dev/pts type devpts (rw,nosuid,noexec,relatime,gid=5,mode=620,ptmxmode=000)
tmpfs on /run type tmpfs (rw,nosuid,noexec,relatime,size=806904k,mode=755)
/dev/sda10 on / type ext4 (rw,relatime,errors=remount-ro,data=ordered)
securityfs on /sys/kernel/security type securityfs (rw,nosuid,nodev,noexec,relatime)
tmpfs on /dev/shm type tmpfs (rw,nosuid,nodev)
tmpfs on /run/lock type tmpfs (rw,nosuid,nodev,noexec,relatime,size=5120k)
tmpfs on /sys/fs/cgroup type tmpfs (rw,mode=755)
cgroup on /sys/fs/cgroup/systemd type cgroup (rw,nosuid,nodev,noexec,relatime,xattr,release_agent=/
....
หากต้องการบันทึกเอาต์พุตที่มีรูปแบบสวยงามในไฟล์ ให้ใช้การเปลี่ยนเส้นทางเอาต์พุตตามที่แสดง
mount | column -t >mount.out
สำหรับข้อมูลเพิ่มเติม โปรดดูที่หน้าคู่มือคอลัมน์:
man column
คุณอาจต้องการอ่านบทความที่เกี่ยวข้องต่อไปนี้
- วิธีใช้ Awk และนิพจน์ทั่วไปเพื่อกรองข้อความหรือสตริงในไฟล์
- วิธีค้นหาและจัดเรียงไฟล์ตามวันที่และเวลาที่แก้ไขใน Linux
- 11 คำสั่ง Linux ขั้นสูง 'Grep' ในคลาสอักขระและนิพจน์วงเล็บ
หากคุณมีคำถามใด ๆ ใช้แบบฟอร์มความคิดเห็นด้านล่างเพื่อเขียนถึงเรา คุณสามารถแบ่งปันเคล็ดลับและเทคนิคบรรทัดคำสั่งที่เป็นประโยชน์ใน Linux ให้เราได้เช่นกัน