Tôi có một tập tin văn bản demo.txtnhư dưới đây.
This is a line with id (9)
This (8) is another line with id
(10) This is a line with id too
11 This line does nothing
Các tập tin có một số dòng với id rải rác ngẫu nhiên. Mẫu id là số có dấu ngoặc đơn.
Công việc của tôi là tìm id lớn nhất trong tệp này để tôi biết id tiếp theo là gì khi thêm một dòng mới.
Công việc trước đây của tôi
ack-grep demo.txt -o --match '\(\d+\)' | sort -r | head -n 1
Kết quả là (9)nhưng không (10)như mong đợi của tôi. Tôi nghĩ lý do sortliên quan đến đầu ra là văn bản vì chúng có dấu ngoặc đơn.
Câu hỏi là: Làm thế nào tôi chỉ có thể xuất số từ ackhoặc grepđể sắp xếp sau mà vẫn khớp với mẫu (dấu ngoặc đơn trong ví dụ của tôi)?
Cảm ơn rất nhiều!
act-grep. Có một gói apt-get install ack-grep. Bản thân tôi thấy actổn định hơn grep.
ack-grepvà ack, không act-grepvà act. Và làm thế nào để bạn có nghĩa là ack ổn định hơn grep? Tôi là tác giả của ack và tôi chắc chắn sẽ không đưa ra yêu sách như vậy.
ack. Tôi đã sử dụng greptrước đây nhưng đôi khi gặp lỗi lạ, sau đó tôi chuyển sang ackvà những lỗi như vậy biến mất. Vì vậy, tôi đã thêm yêu cầu như vậy vào ghi chú của mình nhưng thực sự không thể nhớ lại các trường hợp cho các lỗi.