การใช้less
คำสั่งบน linux ในโหมด tail (คำสั่ง F หรือน้อยกว่า -f) หยุดทำงานอย่างต่อเนื่องในเครื่องและ / หรือไฟล์บางไฟล์ การเปลี่ยนแปลงใหม่ก็หยุดแสดง
ฉันรู้ว่าฉันแก้ไขปัญหานี้มาก่อนนานแล้ว แต่ฉันจำไม่ได้ว่าวิธีแก้ปัญหาคืออะไร
ความคิดใด ๆ
การใช้less
คำสั่งบน linux ในโหมด tail (คำสั่ง F หรือน้อยกว่า -f) หยุดทำงานอย่างต่อเนื่องในเครื่องและ / หรือไฟล์บางไฟล์ การเปลี่ยนแปลงใหม่ก็หยุดแสดง
ฉันรู้ว่าฉันแก้ไขปัญหานี้มาก่อนนานแล้ว แต่ฉันจำไม่ได้ว่าวิธีแก้ปัญหาคืออะไร
ความคิดใด ๆ
คำตอบ:
ลองใช้less --follow-name
ดู แม้ว่าไฟล์จะมีชื่อเหมือนกัน แต่การอัพเดตกระบวนการอาจทำในลักษณะที่เปลี่ยนแปลง inode ของไฟล์ - ดังนั้นจากมุมมองของ OS มันเป็นไฟล์ใหม่หลังจากการอัพเดต
--follow-name
เปิดตัวใน v415 น้อยกว่า ( greenwoodsoftware.com/less/news.415.html ) เปิดตัวเมื่อ 15 พฤศจิกายน 2550 ดังนั้นการติดตั้ง Linux แบบเก่าอาจไม่มี
คุณดูไฟล์บันทึกที่หมุนโดย logrotate หรือไม่ หากไฟล์ที่กำลังดูน้อยกว่านั้นถูกเปลี่ยนชื่อ (เช่นจาก log เป็น log.0 โดย logrotate) ไฟล์จะยังคงดูน้อยกว่าแม้ว่าจะมีการเขียนรายการใหม่ไปยังไฟล์อื่น (ด้วยชื่อเดิม)
บางทีคุณอาจลองtail -f [filename]
แทน
less +F --follow-name
ที่ฉันทำ --follow-name
เพียงแค่ตรวจสอบไฟล์ที่มีชื่อเดียวกันโดยไม่ได้รับการเปลี่ยนแปลงที่เข้ามาในกรณีของฉัน (CentOS 7)
ที่จริงฉันสร้างนามแฝงสำหรับสิ่งนี้:
เพิ่มบรรทัดนี้ใน/etc/profile.d/alias.sh
:
alias lf="less +F --follow-name"
บันทึกและแหล่งที่มาเพื่อใช้ทันที . /etc/profile.d/alias.sh