มีสองคำสั่งที่เป็นประโยชน์ใน Linux ซึ่งจะช่วยให้คุณสามารถดูไฟล์บางส่วนได้ ส่วนแรกจะเรียกว่า head และโดยค่าเริ่มต้นจะแสดงบรรทัดแรก 10 บรรทัดในไฟล์ ข้อที่สองคือ หาง คำสั่งซึ่งโดยค่าเริ่มต้นจะช่วยให้คุณสามารถดู 10 บรรทัดสุดท้ายในไฟล์ได้
เหตุใดคุณจึงต้องการใช้คำสั่งเหล่านี้ ทำไมไม่ใช้คำสั่ง cat เพื่อดูไฟล์ทั้งหมดหรือใช้ editor เช่น nano?
ลองนึกภาพไฟล์ที่คุณกำลังอ่านอยู่ 300,000 บรรทัด ลองจินตนาการว่าไฟล์ใช้เนื้อที่ดิสก์มาก
คำสั่ง head ใช้ทั่วไปเพื่อให้แน่ใจว่าไฟล์ที่คุณต้องการดูเป็นไฟล์ที่ถูกต้อง คุณสามารถบอกได้ว่ากำลังมองหาไฟล์ที่ถูกต้องหรือไม่โดยดูจากบรรทัดแรก ๆ จากนั้นคุณสามารถเลือกใช้ตัวแก้ไขเช่น nano เพื่อแก้ไขไฟล์
คำสั่งหางจะมีประโยชน์สำหรับการดูไฟล์สองสามบรรทัดสุดท้ายและดีมากเมื่อคุณต้องการดูสิ่งที่เกิดขึ้นในแฟ้มบันทึกที่เก็บอยู่ในโฟลเดอร์ / var / log
คำแนะนำนี้จะแสดงวิธีการใช้คำสั่งหางรวมทั้งสวิทช์ทั้งหมดที่มีอยู่
ตัวอย่างการใช้งาน
ดังที่ได้กล่าวไว้ก่อนหน้าคำสั่งหางโดยค่าเริ่มต้นจะแสดง 10 บรรทัดสุดท้ายของไฟล์
ไวยากรณ์สำหรับคำสั่งหางมีดังต่อไปนี้:
หาง คุณสามารถใช้คำสั่งต่อไปนี้: sudo tail /var/log/boot.log ผลลัพธ์จะเป็นดังนี้: * เริ่มเปิดใช้งานอุปกรณ์บล็อกที่เข้ารหัสที่บูตเวลาที่เหลืออยู่ ตกลง* เริ่มบันทึก udev log และปรับปรุงกฎ OK* หยุดบันทึก udev log และปรับปรุงกฎ OK* ตัวจัดการการพูดถูกปิดการใช้งาน แก้ไข / etc / default / speech-dispatcher* การเพิ่ม VirtualBox เพิ่มขึ้นโดยไม่ใช้ Virtual Machineถูกปิดใช้งาน แก้ไข / etc / default / saned* การกู้คืนสถานะ resolver … OK* การหยุดทำงานของระบบ V runlevel compatibility ตกลง* การเริ่มต้น MDM Display Manager OK* หยุดการส่งเหตุการณ์เพื่อระบุว่า plymouth ขึ้น OK บางทีคุณอาจต้องการดูมากกว่า 10 บรรทัดสุดท้ายของไฟล์ คุณสามารถระบุจำนวนบรรทัดที่ต้องการดูโดยใช้คำสั่งต่อไปนี้: sudo tail -n20 ตัวอย่างข้างต้นจะแสดง 20 บรรทัดสุดท้ายของไฟล์ หรือคุณสามารถใช้ -n สลับเพื่อระบุจุดเริ่มต้นในไฟล์ด้วย บางทีคุณอาจรู้ว่า 30 แถวแรกในไฟล์เป็นความคิดเห็นและคุณต้องการดูข้อมูลภายในไฟล์ ในกรณีนี้คุณจะใช้คำสั่งต่อไปนี้: sudo tail -n + 20 คำสั่งหางมักใช้ควบคู่ไปกับ มากกว่า เพื่อให้คุณสามารถอ่านไฟล์ในแต่ละครั้งได้ ตัวอย่างเช่น: sudo tail -n + 20 คำสั่งข้างต้นส่ง 20 บรรทัดสุดท้ายจากชื่อไฟล์และท่อเป็นอินพุทไปยังคำสั่งเพิ่มเติม: นอกจากนี้คุณยังสามารถใช้คำสั่งหางเพื่อแสดงจำนวนไบต์บางอย่างแทนบรรทัด: sudo tail -c20 อีกครั้งคุณสามารถใช้สวิตช์เดียวกันเพื่อเริ่มต้นแสดงจากจำนวนไบต์บางอย่างดังนี้: sudo tail -c + 20 มีหลายสคริปต์และโปรแกรมที่ไม่ได้ส่งออกไปยังหน้าจอ แต่จะผนวกเข้ากับไฟล์บันทึกขณะที่กำลังทำงานอยู่ ในกรณีนี้คุณอาจต้องตรวจสอบไฟล์บันทึกตามที่เปลี่ยนแปลง คุณสามารถใช้คำสั่งหางต่อไปนี้เพื่อตรวจสอบว่าบันทึกเปลี่ยนไปหลายวินาทีได้อย่างไร: sudo tail -F -s20 นอกจากนี้คุณยังสามารถใช้หางเพื่อเฝ้าติดตามบันทึกต่อไปจนกว่ากระบวนการจะตายดังต่อไปนี้: sudo tail -F --pid = 1234 เมื่อต้องการค้นหารหัสกระบวนการสำหรับกระบวนการที่คุณสามารถใช้คำสั่งต่อไปนี้: ps -ef | grep ตัวอย่างเช่นสมมติว่าคุณกำลังแก้ไขไฟล์ด้วย nano คุณสามารถหารหัสกระบวนการสำหรับนาโนโดยใช้คำสั่งต่อไปนี้: ps -ef | grep nano ผลลัพธ์จากคำสั่งจะระบุรหัสกระบวนการ ลองนึกภาพรหัสกระบวนการคือ 1234 ตอนนี้คุณสามารถเรียกใช้ tail กับไฟล์ที่ถูกแก้ไขโดย nano โดยใช้คำสั่งต่อไปนี้: sudo tail -F --pid = 1234 ทุกครั้งที่ไฟล์ถูกบันทึกไว้ภายใน nano คำสั่งหางจะรับบรรทัดใหม่ที่ด้านล่าง คำสั่งจะหยุดทำงานเฉพาะเมื่อปิดตัวแก้ไข nano หากคุณได้รับข้อผิดพลาดขณะพยายามเรียกใช้คำสั่งหางเนื่องจากไม่สามารถเข้าถึงได้ด้วยเหตุผลบางประการจากนั้นคุณสามารถใช้ ลองใหม่อีกครั้ง พารามิเตอร์เพื่อให้ลองใหม่จนกว่าไฟล์จะพร้อมใช้งาน sudo tail --retry -F นี้ใช้ได้เฉพาะกับการทำงานร่วมกับ -F เปลี่ยนตามที่คุณต้องทำตามไฟล์ที่ต้องการลองอีกครั้ง หากต้องการทราบข้อมูลเพิ่มเติมเกี่ยวกับคำสั่งหางคุณสามารถใช้คำสั่งต่อไปนี้: หางมนุษย์ คุณจะสังเกตเห็นว่าเราได้รวมไว้แล้ว sudo ภายในคำสั่งส่วนใหญ่ การดำเนินการนี้จำเป็นเฉพาะเมื่อคุณไม่มีสิทธิ์ในฐานะผู้ใช้ตามปกติในการดูไฟล์และคุณต้องได้รับสิทธิ์ในระดับสูง วิธีกำหนดจำนวนเส้นที่จะแสดง
วิธีการตรวจสอบแฟ้มบันทึก
วิธีการลองคำสั่งหางอีกครั้ง
สรุป