
Lệnh “tail” trên hệ điều hành Linux được sử dụng để hiển thị nội dung của file từ cuối file. Lệnh này mặc định hiển thị 10 dòng cuối cùng của file, nhưng bạn có thể điều chỉnh số lượng dòng hiển thị bằng cách sử dụng tùy chọn.
Các option phổ biến của lệnh tail trong Linux bao gồm:
- -n <number>: Chỉ định số lượng dòng được hiển thị từ cuối file. Ví dụ:
tail -n 10 filenamesẽ hiển thị 10 dòng cuối cùng của filefilename. - -f: Theo dõi sự thay đổi của file theo thời gian thực. Lệnh sẽ không kết thúc mà sẽ tiếp tục hiển thị các dòng mới được thêm vào trong file khi chúng được tạo ra. Ví dụ:
tail -f filenamesẽ theo dõi các thay đổi của filefilenametrong thời gian thực. - -q: Không hiển thị tiêu đề file. Nếu file được chỉ định có nhiều hơn một file, tiêu đề sẽ được hiển thị.
- -v: Hiển thị tiêu đề của file khi có nhiều hơn một file được hiển thị.
- –retry: Thử mở lại file nếu không thể mở được. Ví dụ:
tail --retry filenamesẽ thử mở lại filefilenamenếu file không thể mở được. - –pid=PID: Dừng lệnh tail khi tiến trình có ID là PID kết thúc.
- -c <number>: Hiển thị số byte cuối cùng của file thay vì số dòng. Ví dụ:
tail -c 100 filenamesẽ hiển thị 100 byte cuối cùng của filefilename.
Với các option này, người dùng có thể tùy chỉnh hiển thị các dòng hoặc byte cuối cùng của file, theo dõi các thay đổi của file trong thời gian thực và điều chỉnh các thông báo tiêu đề của file.
Ví dụ, để hiển thị 5 dòng cuối cùng của một file có tên là “example.txt”, bạn có thể sử dụng câu lệnh:
tail -n 5 example.txtTrong đó, “-n” là tùy chọn để chỉ định số lượng dòng hiển thị và “example.txt” là tên của file cần hiển thị.
Ngoài ra, bạn có thể sử dụng tùy chọn “-f” để theo dõi và hiển thị nội dung của file khi có các thay đổi mới được thêm vào. Ví dụ:
tail -f example.txtĐể hiển thị nội dung của nhiều file cùng một lúc bằng lệnh tail, bạn có thể chỉ định tên các file cách nhau bằng khoảng trắng.
Ví dụ: bạn có hai file là file1.txt và file2.txt, để hiển thị 10 dòng cuối cùng của từng file, bạn có thể sử dụng lệnh sau:
tail file1.txt file2.txtNếu bạn muốn hiển thị các dòng cuối cùng của các file đó trên cùng một trang, bạn có thể sử dụng tùy chọn -f để theo dõi và cập nhật nội dung của các file trong thời gian thực.
Ví dụ: để hiển thị các dòng cuối cùng của các file đó trên cùng một trang, bạn có thể sử dụng lệnh sau:
tail -f file1.txt file2.txtLệnh này sẽ hiển thị 10 dòng cuối cùng của các file và theo dõi và cập nhật nội dung của các file trong thời gian thực.
Để hiển thị số byte cụ thể của một file, ta sử dụng tùy chọn -c hoặc –bytes. Ví dụ:
tail -c 20 example.txtLệnh trên sẽ hiển thị 20 byte cuối cùng của file “example.txt”.
Ngoài ra, ta cũng có thể sử dụng tùy chọn + n để hiển thị n byte từ vị trí bắt đầu của file. Ví dụ:
tail -c +5 example.txtLệnh trên sẽ hiển thị nội dung của file “example.txt” từ byte thứ 5 trở đi.
Một số ví dụ nâng cao.
ls -t /etc | tail -n 6: Lệnh này sử dụng để hiển thị 6 file mới nhất trong thư mục /etc của hệ thống. Các file sẽ được sắp xếp theo thứ tự thời gian, từ mới đến cũ, vì ta sử dụng tùy chọn -t trong lệnh ls. Sau khi hiển thị danh sách các file, lệnh tail -n 6 được sử dụng để chỉ hiển thị 6 file cuối cùng của danh sách đó.ps aux | sort -nk +3 | tail -2: Lệnh này sử dụng để hiển thị 2 tiến trình đang chạy trên hệ thống với giá trị RSS (Resident Set Size) nhỏ nhất. Đầu tiên, lệnhps auxđược sử dụng để hiển thị thông tin về tất cả các tiến trình đang chạy trên hệ thống. Tiếp theo, đầu ra của lệnh này được đưa vào lệnhsort -nk +3, trong đó tùy chọn -n được sử dụng để sắp xếp theo giá trị số và tùy chọn -k được sử dụng để chỉ định trường được sắp xếp, trong trường hợp này là RSS. Ký tự +3 được sử dụng để chỉ định vị trí của trường RSS trong đầu ra của lệnhps aux. Cuối cùng, lệnhtail -2được sử dụng để chỉ hiển thị 2 tiến trình cuối cùng trong danh sách đã được sắp xếp theo thứ tự RSS tăng dần.
