มีวิธีง่ายๆในการทำสิ่งต่าง ๆ เช่นtail -f mylogfile
แต่มีการเปลี่ยนแปลงมากกว่าหนึ่งไฟล์ที่แสดง (อาจมีการเพิ่มชื่อไฟล์เป็นคำนำหน้าในแต่ละบรรทัด)? หรืออาจเป็นเครื่องมือ GUI ฉันกำลังเรียกใช้ Debian
มีวิธีง่ายๆในการทำสิ่งต่าง ๆ เช่นtail -f mylogfile
แต่มีการเปลี่ยนแปลงมากกว่าหนึ่งไฟล์ที่แสดง (อาจมีการเพิ่มชื่อไฟล์เป็นคำนำหน้าในแต่ละบรรทัด)? หรืออาจเป็นเครื่องมือ GUI ฉันกำลังเรียกใช้ Debian
คำตอบ:
คุณเคยลองtail -f file1 file2
ไหม ดูเหมือนจะทำสิ่งที่คุณต้องการอย่างน้อยที่สุดบนเครื่อง FreeBSD ของฉัน บางทีสิ่งtail
ที่มาพร้อมกับระบบ Debian ก็ทำได้เช่นกัน?
-F
แทนเนื่องจากไฟล์จำนวนมากอาจถูกตัดทอนเนื่องจากฉันรีสตาร์ทโปรแกรมเซิร์ฟเวอร์
tail -qF *.log
: -q
เพื่อซ่อนชื่อไฟล์และ-F
ตามที่ Arcege ชี้ให้tail
ทำตามชื่อแทนที่จะเป็น descriptor เพราะไฟล์บันทึกของฉันถูกหมุน
tail -f /var/log/folder/*
ส่งคืนข้อผิดพลาด "ไม่สามารถเรียกใช้ / usr / bin / tail: รายการอาร์กิวเมนต์ยาวเกินไป"
ด้วยเหตุผลบางอย่างคำตอบในtail -f file1 file2
หลาย ๆ สิ่งไม่ได้อยู่ในใจ
ฉันต้องการที่จะรู้ว่าสิ่งที่เกิดขึ้นในหลาย ๆ บันทึกล่าสุดของ 'ท้องถิ่น' โดยไม่คำนึงถึงลำดับเหตุการณ์ทั่วโลก
ในการทำเช่นนั้นฉันใช้บางอย่างที่มากกว่า watch -n1 tail -n10 file1 file2
สำหรับแบบฝึกหัดฉันเขียนยูทิลิตีโหนดขนาดเล็กที่ทำสิ่งเดียวกันกับ tail -f f1 f2 f3
Splex:
https://www.npmjs.com/package/splex
"อัพเกรด" หลักคือเส้นที่มีรหัสสีต่อชื่อไฟล์และคุณสามารถมีอินเตอร์เฟซเหมือนโต๊ะ
Improvemtn อีกอันที่จริงแล้วเหตุผลหลักที่ฉันเขียนนี้คือความสามารถในการมีไฟล์. splexrc.jsonในโฟลเดอร์ที่แตกต่างกันดังนั้นแทนที่จะต้องพิมพ์tail -f f1 f2 f3
ในโฟลเดอร์เดียวจากนั้นจึงแตกต่างไฟล์ในไฟล์อื่นคุณสามารถเขียนไฟล์. splexrc.json ในรากของ โครงการของคุณและเพียงพิมพ์splex
โดยไม่มีข้อโต้แย้งรายการไฟล์และมันจะสตรีมไฟล์บันทึกที่เกี่ยวข้องที่คุณระบุในไฟล์กำหนดค่าโดยอัตโนมัติ
multitail
เป็นกษัตริย์ที่นั่น ดูการรวมอินพุตจากหลายไฟล์ / ท่อโดยไม่มีการปิดบังเส้นหรือการบล็อก?