ค้นหาเว็บไซต์

เรียนรู้ว่าเหตุใดคำสั่ง 'less' จึงเร็วกว่าคำสั่ง 'more' เพื่อการนำทางไฟล์อย่างมีประสิทธิภาพ


เพิ่มเติม คือบรรทัดคำสั่ง *nix ที่ใช้เพื่อแสดงเนื้อหาของไฟล์ในคอนโซล การใช้งานพื้นฐานของคำสั่ง more คือการรันคำสั่งกับไฟล์ดังที่แสดงด้านล่าง:

อ่านเพิ่มเติม: เรียนรู้ความแตกต่างระหว่างคำสั่ง 'cat' และ 'tac' พร้อมตัวอย่าง

เรียนรู้คำสั่ง 'เพิ่มเติม' ของ Linux

# more /var/log/auth.log
Apr 12 11:50:01 tecmint CRON[6932]: pam_unix(cron:session): session opened for user root by (uid=0)
Apr 12 11:50:01 tecmint CRON[6932]: pam_unix(cron:session): session closed for user root
Apr 12 11:55:01 tecmint CRON[7159]: pam_unix(cron:session): session opened for user root by (uid=0)
Apr 12 11:55:01 tecmint CRON[7160]: pam_unix(cron:session): session opened for user root by (uid=0)
Apr 12 11:55:01 tecmint CRON[7160]: pam_unix(cron:session): session closed for user root
Apr 12 11:55:02 tecmint CRON[7159]: pam_unix(cron:session): session closed for user root
Apr 12 12:00:01 tecmint CRON[7290]: pam_unix(cron:session): session opened for user root by (uid=0)
Apr 12 12:00:01 tecmint CRON[7290]: pam_unix(cron:session): session closed for user root
Apr 12 12:05:01 tecmint CRON[7435]: pam_unix(cron:session): session opened for user root by (uid=0)
Apr 12 12:05:01 tecmint CRON[7436]: pam_unix(cron:session): session opened for user root by (uid=0)
Apr 12 12:05:01 tecmint CRON[7436]: pam_unix(cron:session): session closed for user root
Apr 12 12:05:02 tecmint CRON[7435]: pam_unix(cron:session): session closed for user root
Apr 12 12:09:01 tecmint CRON[7542]: pam_unix(cron:session): session opened for user root by (uid=0)
Apr 12 12:09:01 tecmint CRON[7542]: pam_unix(cron:session): session closed for user root
Apr 12 12:10:01 tecmint CRON[7577]: pam_unix(cron:session): session opened for user root by (uid=0)
Apr 12 12:10:01 tecmint CRON[7577]: pam_unix(cron:session): session closed for user root
Apr 12 12:15:01 tecmint CRON[7699]: pam_unix(cron:session): session opened for user root by (uid=0)
Apr 12 12:15:01 tecmint CRON[7700]: pam_unix(cron:session): session opened for user root by (uid=0)
Apr 12 12:15:01 tecmint CRON[7700]: pam_unix(cron:session): session closed for user root
Apr 12 12:15:01 tecmint CRON[7699]: pam_unix(cron:session): session closed for user root
....

อีกวิธีหนึ่งในการใช้คำสั่ง more ร่วมกับ (ไปป์) กับคำสั่งอื่นๆ เช่น คำสั่ง cat ดังตัวอย่างด้านล่าง:

cat /var/log/auth.log | more

เพื่อที่จะนำทางผ่านไฟล์ทีละบรรทัด ให้กดปุ่ม Enter หรือกดปุ่ม Spacebar เพื่อนำทางทีละหน้า โดยหน้าเว็บจะเป็นขนาดหน้าจอเทอร์มินัลปัจจุบันของคุณ หากต้องการออกจากคำสั่งเพียงกดปุ่ม q

ตัวเลือกที่มีประโยชน์ของคำสั่งเพิ่มเติมคือสวิตช์ -number ซึ่งช่วยให้คุณกำหนดจำนวนบรรทัดที่หน้าเว็บควรมี ตามตัวอย่าง แสดงไฟล์ auth.log เป็นหน้า 10 บรรทัด:

more -10 /var/log/auth.log

นอกจากนี้ คุณยังสามารถแสดงหน้าที่เริ่มต้นจากหมายเลขบรรทัดที่ต้องการได้โดยใช้ตัวเลือก +number ดังที่แสดงด้านล่าง:

more +14 /var/log/auth.log
Apr 12 12:09:01 tecmint CRON[7542]: pam_unix(cron:session): session closed for user root
Apr 12 12:10:01 tecmint CRON[7577]: pam_unix(cron:session): session opened for user root by (
uid=0)
Apr 12 12:10:01 tecmint CRON[7577]: pam_unix(cron:session): session closed for user root
Apr 12 12:15:01 tecmint CRON[7699]: pam_unix(cron:session): session opened for user root by (
uid=0)
Apr 12 12:15:01 tecmint CRON[7700]: pam_unix(cron:session): session opened for user root by (
uid=0)
Apr 12 12:15:01 tecmint CRON[7700]: pam_unix(cron:session): session closed for user root
Apr 12 12:15:01 tecmint CRON[7699]: pam_unix(cron:session): session closed for user root
Apr 12 12:16:01 tecmint mate-screensaver-dialog: gkr-pam: unlocked login keyring
Apr 12 12:17:01 tecmint CRON[7793]: pam_unix(cron:session): session opened for user root by (
uid=0)
Apr 12 12:17:01 tecmint CRON[7793]: pam_unix(cron:session): session closed for user root
Apr 12 12:20:01 tecmint CRON[7905]: pam_unix(cron:session): session opened for user root by (
uid=0)
Apr 12 12:20:01 tecmint CRON[7905]: pam_unix(cron:session): session closed for user root
Apr 12 12:25:01 tecmint CRON[8107]: pam_unix(cron:session): session opened for user root by (
uid=0)
Apr 12 12:25:01 tecmint CRON[8108]: pam_unix(cron:session): session opened for user root by (

เรียนรู้คำสั่ง Linux 'น้อย'

คล้ายกับคำสั่ง เพิ่มเติม คำสั่ง น้อย ช่วยให้คุณสามารถดูเนื้อหาของไฟล์และนำทางไปยังไฟล์ได้ ข้อแตกต่างหลักระหว่าง more และ less ก็คือ คำสั่ง less จะทำงานเร็วกว่า เนื่องจากไม่ได้โหลดไฟล์ทั้งหมดพร้อมกัน และช่วยให้สามารถนำทางผ่านไฟล์โดยใช้ ปุ่ม ขึ้น/ลง

In สามารถใช้เป็นคำสั่งแบบสแตนด์อโลนที่ออกให้กับไฟล์หรือใช้กับไพพ์ที่มีคำสั่ง Linux มากมายเพื่อจำกัดเอาต์พุตหน้าจอให้แคบลงเพื่อให้คุณสามารถเลื่อนดูผลลัพธ์ได้

less /var/log/auth.log
ls /etc | less

คุณสามารถเลื่อนดูบรรทัดไฟล์ทีละบรรทัดโดยกดปุ่ม Enter การนำทางเพจสามารถจัดการได้ด้วยปุ่ม spacebar ขนาดหน้าจะแสดงด้วยขนาดหน้าจอเทอร์มินัลปัจจุบันของคุณ หากต้องการออกจากคำสั่ง ให้พิมพ์คีย์ q เช่นเดียวกับคำสั่งเพิ่มเติม

คุณลักษณะที่มีประโยชน์ของคำสั่ง น้อย คือการใช้ตัวเลือก /คำเพื่อค้นหา ตัวอย่างเช่น คุณสามารถค้นหาและจับคู่ข้อความ sshd ทั้งหมดจากไฟล์บันทึกโดยระบุสตริง /sshd แบบโต้ตอบได้

ในการแสดงไฟล์โดยจ้องไปที่หมายเลขบรรทัดเฉพาะให้ใช้ไวยากรณ์ต่อไปนี้:

less +5 /var/log/auth.log

หากคุณต้องการติดตามจำนวนทุกบรรทัดด้วยคำสั่ง less ให้ใช้ตัวเลือก -N

less -N /var/log/daemon.log
      1 Apr 12 11:50:01 tecmint CRON[6932]: pam_unix(cron:session): session opened for user root by (uid=0)
      2 Apr 12 11:50:01 tecmint CRON[6932]: pam_unix(cron:session): session closed for user root
      3 Apr 12 11:55:01 tecmint CRON[7159]: pam_unix(cron:session): session opened for user root by (uid=0)
      4 Apr 12 11:55:01 tecmint CRON[7160]: pam_unix(cron:session): session opened for user root by (uid=0)
      5 Apr 12 11:55:01 tecmint CRON[7160]: pam_unix(cron:session): session closed for user root
      6 Apr 12 11:55:02 tecmint CRON[7159]: pam_unix(cron:session): session closed for user root
      7 Apr 12 12:00:01 tecmint CRON[7290]: pam_unix(cron:session): session opened for user root by (uid=0)
      8 Apr 12 12:00:01 tecmint CRON[7290]: pam_unix(cron:session): session closed for user root
      9 Apr 12 12:05:01 tecmint CRON[7435]: pam_unix(cron:session): session opened for user root by (uid=0)
     10 Apr 12 12:05:01 tecmint CRON[7436]: pam_unix(cron:session): session opened for user root by (uid=0)
     11 Apr 12 12:05:01 tecmint CRON[7436]: pam_unix(cron:session): session closed for user root

ตามค่าเริ่มต้น วิธีเดียวที่จะออกจากคำสั่ง less คือการกดปุ่ม q หากต้องการเปลี่ยนพฤติกรรมนี้และออกจากไฟล์โดยอัตโนมัติเมื่อถึงจุดสิ้นสุดของไฟล์ ให้ใช้ตัวเลือก -e หรือ -E:

less -e /var/log/auth.log
less -E /var/log/auth.log

หากต้องการเปิดไฟล์เมื่อเกิดรูปแบบครั้งแรก ให้ใช้ไวยากรณ์ต่อไปนี้:

less +/sshd /var/log/auth.log
Apr 12 16:19:39 tecmint sshd[16666]: Accepted password for tecmint from 192.168.0.15 port 41634 ssh2
Apr 12 16:19:39 tecmint sshd[16666]: pam_unix(sshd:session): session opened for user tecmint by (uid=0)
Apr 12 16:19:39 tecmint systemd-logind[954]: New session 1 of user tecmint.
Apr 12 16:19:48 tecmint sshd[16728]: Received disconnect from 192.168.0.15: 11: disconnected by user
Apr 12 16:19:48 tecmint sshd[16666]: pam_unix(sshd:session): session closed for user tecmint
Apr 12 16:20:01 tecmint CRON[16799]: pam_unix(cron:session): session opened for user root by (uid=0)
Apr 12 16:20:02 tecmint CRON[16799]: pam_unix(cron:session): session closed for user root
Apr 12 16:25:01 tecmint CRON[17026]: pam_unix(cron:session): session opened for user root by (uid=0)
Apr 12 16:25:01 tecmint CRON[17025]: pam_unix(cron:session): session opened for user root by (uid=0)

คำสั่งข้างต้นบอก less ให้เปิดไฟล์ auth.log ที่คู่แรกของสตริง sshd

หากต้องการเพิ่มเนื้อหาของไฟล์ที่เปิดด้วยคำสั่ง less ต่อท้ายโดยอัตโนมัติ ให้ใช้คีย์ผสม Shift+f หรือเรียกใช้น้อยลงด้วยไวยากรณ์ต่อไปนี้

less +F /var/log/syslog

ทำให้การทำงานในโหมดโต้ตอบ (สด) น้อยลง และแสดงเนื้อหาใหม่ได้ทันทีขณะรอข้อมูลใหม่ที่จะเขียนลงไฟล์ ลักษณะการทำงานนี้คล้ายกับคำสั่ง tail -f

เมื่อใช้ร่วมกับรูปแบบ คุณสามารถดูไฟล์บันทึกแบบโต้ตอบด้วยการกดปุ่ม Shift+f ในขณะที่จับคู่คำหลัก หากต้องการออกจากโหมดถ่ายทอดสด เพียงกดปุ่ม Ctrl+c

less +/CRON /var/log/syslog

ไม่ว่าคุณจะตัดสินใจใช้ มากขึ้น หรือ น้อยลง ซึ่งเป็นตัวเลือกส่วนบุคคล โปรดจำไว้ว่า น้อย ยิ่งมากขึ้นด้วย มากขึ้น คุณสมบัติ.

อ่านเพิ่มเติม: จัดการไฟล์อย่างมีประสิทธิภาพโดยใช้คำสั่ง head, tail และ cat