คุณต้องการ tail --follow=name /var/log/syslog
เหตุผลก็คือโดยค่าเริ่มต้น - ควรเป็นเพราะเหตุผลด้านประสิทธิภาพ - tail เปิดไฟล์ที่ระบุและจากนั้นตรวจสอบ อธิบายไฟล์ มันได้รับ
จากนั้น open(2) เรียกร้องให้มีการเปลี่ยนแปลง
ใช้งานได้ดีตราบใดที่ไฟล์มีการเปลี่ยนแปลง - ต่อท้ายหรือเขียนใหม่ (โดยตัดทอนก่อน) แต่จะหยุดทำงานหากไฟล์นั้น แทนที่ - นั่นคือถูกลบออกและสร้างด้วยชื่อเดียวกันและนั่นคือสิ่งที่ logrotate มักจะทำ
โหมด "ชื่อ" ของ --follow ยี่ห้อ tail ใช้ราคาแพงกว่า stat(2) syscall ซึ่งอันที่จริง "แก้ไข" ชื่อไฟล์ทุกครั้งผ่านชั้นระบบแฟ้มและถ้า tail สังเกตเห็นไฟล์ที่เปลี่ยนแปลงเรียกว่า "ไอโหนด" , tail เปิดไฟล์อีกครั้ง
ผลลัพธ์จาก man tail:
-f, --follow[={name|descriptor}]
เอาท์พุทผนวกข้อมูลเมื่อไฟล์เติบโต;
อาร์กิวเมนต์ตัวเลือกที่ขาดหมายถึง 'descriptor'
คุณอาจจะดู -F ตัวเลือกบรรทัดคำสั่งซึ่งกำหนดเป็น
-F เหมือนกับ --follow=name --retry