Làm thế nào để xem kết thúc của một tập tin trong Linux với lệnh đuôi

Có hai lệnh rất hữu ích trong Linux cho phép bạn xem một phần của một tệp. Đầu tiên được gọi là head và theo mặc định, nó cho bạn thấy 10 dòng đầu tiên trong một tệp. Thứ hai là lệnh tail theo mặc định cho phép bạn xem 10 dòng cuối cùng trong một tập tin.

Tại sao bạn muốn sử dụng một trong các lệnh này? Tại sao không chỉ sử dụng lệnh cat để xem toàn bộ tập tin hoặc sử dụng một trình soạn thảo như nano ?

Hãy tưởng tượng tệp bạn đang đọc có 300.000 dòng trong đó.

Hãy tưởng tượng cũng là tập tin tiêu thụ rất nhiều không gian đĩa.

Việc sử dụng phổ biến cho lệnh head là đảm bảo rằng tệp bạn muốn xem thực sự là tệp chính xác. Bạn thường có thể biết liệu bạn đang xem đúng tệp chỉ bằng cách nhìn thấy một vài dòng đầu tiên. Sau đó, bạn có thể chọn sử dụng trình chỉnh sửa như nano để chỉnh sửa tệp.

Lệnh đuôi rất hữu ích khi xem một vài dòng tệp cuối cùng và rất tốt khi bạn muốn xem điều gì đang xảy ra trong tệp nhật ký được giữ trong thư mục / var / log .

Hướng dẫn này sẽ chỉ cho bạn cách sử dụng lệnh đuôi bao gồm tất cả các công tắc có sẵn.

Cách sử dụng ví dụ của lệnh Tail

Như đã đề cập trước đó, lệnh đuôi theo mặc định cho thấy 10 dòng cuối cùng của một tệp.

Cú pháp cho lệnh đuôi như sau:

đuôi

Ví dụ để xem nhật ký khởi động cho hệ thống của bạn, bạn có thể sử dụng lệnh sau:

sudo tail /var/log/boot.log

Đầu ra sẽ là một cái gì đó như thế này:

* Bắt đầu kích hoạt các thiết bị chặn mã hóa thời gian khởi động còn lại [OK]
* Bắt đầu lưu nhật ký udev và cập nhật quy tắc [OK]
* Dừng lưu nhật ký udev và cập nhật quy tắc [OK]
* bị tắt điều phối bằng giọng nói; chỉnh sửa / etc / default / speech-dispatcher
* VirtualBox bổ sung bị vô hiệu hóa, không phải trong một máy ảo
saned tàn tật; chỉnh sửa / etc / default / saned
* Đang khôi phục trạng thái phân giải ... [OK]
* Dừng hệ thống V tương thích runlevel [OK]
* Khởi động Trình quản lý hiển thị MDM [OK]
* Dừng Gửi một sự kiện để cho biết plymouth là lên [OK]

Làm thế nào để xác định số lượng dòng để hiển thị

Có thể bạn muốn xem nhiều hơn 10 dòng cuối cùng của tệp. Bạn có thể chỉ định số dòng bạn muốn xem bằng cách sử dụng lệnh sau:

sudo tail -n20

Ví dụ trên sẽ hiển thị 20 dòng cuối cùng của tệp.

Thay vào đó, bạn có thể sử dụng nút chuyển đổi -n để chỉ định điểm bắt đầu trong tệp. Có lẽ bạn biết 30 hàng đầu tiên trong một tệp là các nhận xét và bạn chỉ muốn xem dữ liệu trong một tệp. Trong trường hợp này, bạn sẽ sử dụng lệnh sau:

sudo đuôi -n + 20

Lệnh đuôi thường được sử dụng cùng với lệnh khác để bạn có thể đọc từng trang một tệp.

Ví dụ:

sudo đuôi -n + 20 | hơn

Lệnh trên gửi 20 dòng cuối cùng từ tên tệp và đặt nó làm đầu vào cho lệnh sau:

Bạn cũng có thể sử dụng lệnh đuôi để hiển thị một số byte nhất định thay vì dòng:

sudo tail -c20

Một lần nữa, bạn có thể sử dụng cùng một công tắc để bắt đầu hiển thị từ một số byte nhất định như sau:

sudo đuôi -c + 20

Cách theo dõi tệp nhật ký

Có rất nhiều tập lệnh và chương trình không xuất ra màn hình nhưng sẽ thêm vào tệp nhật ký khi chúng đang chạy.

Trong trường hợp này, bạn có thể muốn theo dõi tệp nhật ký khi nó thay đổi.

Bạn có thể sử dụng lệnh đuôi sau đây để kiểm tra cách nhật ký thay đổi sau mỗi giây:

sudo tail -F -s20

Bạn cũng có thể sử dụng đuôi để tiếp tục theo dõi nhật ký cho đến khi quá trình chết như sau:

sudo tail -F --pid = 1234

Để tìm id tiến trình cho một quá trình, bạn có thể sử dụng lệnh sau:

ps -ef | grep

Ví dụ: hãy tưởng tượng bạn đang chỉnh sửa tệp bằng nano. Bạn có thể tìm thấy ID tiến trình cho nano bằng cách sử dụng lệnh sau:

ps -ef | grep nano

Đầu ra từ lệnh sẽ cung cấp cho bạn một ID tiến trình. Hãy tưởng tượng ID quá trình là 1234.

Bây giờ bạn có thể chạy đuôi đối với tệp đang được chỉnh sửa bởi nano bằng cách sử dụng lệnh sau:

sudo tail -F --pid = 1234

Mỗi khi tệp được lưu trong nano lệnh đuôi sẽ nhận các dòng mới ở dưới cùng. Lệnh chỉ dừng lại khi trình soạn thảo nano được đóng lại.

Làm thế nào để thử lại lệnh Tail

Nếu bạn nhận được một lỗi trong khi cố gắng chạy lệnh đuôi vì nó không thể truy cập vì một lý do nào đó thì bạn có thể sử dụng tham số thử lại để tiếp tục thử lại cho đến khi tệp khả dụng.

sudo tail --retry -F

Điều này chỉ thực sự hoạt động kết hợp với công tắc -F khi bạn cần theo dõi tệp muốn thử lại.

Tóm lược

Hướng dẫn này cho thấy cách sử dụng phổ biến hơn của lệnh tail.

Để tìm hiểu thêm thông tin về lệnh tail bạn có thể sử dụng lệnh sau:

người đàn ông đuôi

Bạn sẽ nhận thấy rằng tôi đã bao gồm sudo trong hầu hết các lệnh. Điều này chỉ cần thiết khi bạn không có quyền như người dùng thông thường của mình để xem tệp và bạn cần quyền cao.