Lệnh Bash để cắt đầu ra sau x số dòng


27

Tôi đang tìm kiếm một lệnh bash, mà tôi có thể sử dụng để giới hạn số lượng dòng của một tệp hoặc một đầu ra lệnh khác. Ví dụ

ls -thor | limit 10

sẽ giới hạn đầu ra của lệnh ls thành 10 dòng (trong ví dụ, lệnh "giới hạn" tự nhiên là một lệnh tưởng tượng, mà tôi đang tìm kiếm tương đương). Có lệnh như vậy, hoặc một giải pháp liên quan?

Câu trả lời:


47

Sử dụng đầu :

ls -l | head -n 15

10 dòng là mặc định. Đọc đầu trang người đàn ông cho các tùy chọn hơn.

(phiên bản cũ hơn của đầu cũng hỗ trợ sử dụng mà không rõ ràng -nnhư trong head -15)


đánh bại tôi với nó :)
warren

Cám ơn. Tôi nên đã tìm ra nó, rõ ràng khi bạn biết rằng có một lệnh "đuôi" .. :)
simon

2
Cú pháp -integer là (ít nhất là trong phiên bản GNU của đầu / đuôi không được khuyến khích - bạn nên sử dụng -n 15)

Tôi không biết điều đó. Thói quen cũ khó thay đổi. Tôi sẽ phải cố gắng học điều đó.
Doug Harris

1
Phiên bản GNU Coreutils hiện tại headchấp nhận head -15(nhưng chỉ khi đó là đối số đầu tiên). Tài liệu mô tả tùy chọn này là lỗi thời.
Keith Thompson
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.