Tôi có một số tệp văn bản tôi sử dụng để ghi chú - chỉ là văn bản thuần túy, thường chỉ sử dụng cat >> file
. Thỉnh thoảng tôi sử dụng một hoặc hai dòng trống (chỉ cần trả về - ký tự dòng mới) để chỉ định một chủ đề / dòng suy nghĩ mới. Vào cuối mỗi phiên, trước khi đóng tệp bằng Ctrl+ D, tôi thường thêm nhiều dòng (5-10) dòng trống (phím trả về) chỉ để phân tách các phiên.
Điều này rõ ràng là không thông minh lắm, nhưng nó hoạt động với tôi cho mục đích này. Tôi làm tuy nhiên kết thúc-up với rất nhiều và rất nhiều dòng trống không cần thiết, vì vậy tôi đang tìm kiếm một cách để loại bỏ (đa số) các dòng thêm. Có một lệnh Linux (cắt, dán, grep, ...?) Có thể được sử dụng trực tiếp với một vài tùy chọn không? Ngoài ra, có ai có ý tưởng cho một kịch bản sed, awk hoặc perl (thực sự trong bất kỳ ngôn ngữ kịch bản nào, mặc dù tôi thích sed hoặc awk) sẽ làm những gì tôi muốn không? Viết một cái gì đó bằng C ++ (mà tôi thực sự có thể tự làm), có vẻ như quá mức cần thiết.
Trường hợp 1: Điều tôi cần là một tập lệnh / lệnh sẽ loại bỏ nhiều hơn hai (3 hoặc nhiều hơn) các dòng trống liên tiếp và thay thế chúng chỉ bằng hai dòng trống. Mặc dù thật tuyệt nếu nó cũng có thể được điều chỉnh để loại bỏ nhiều hơn một dòng (2 hoặc nhiều hơn) và / hoặc thay thế nhiều dòng trống chỉ bằng một dòng trống.
Trường hợp # 2: Tôi cũng có thể sử dụng tập lệnh / lệnh sẽ xóa một dòng trống duy nhất giữa hai dòng văn bản, nhưng để lại nhiều dòng trống như vậy (mặc dù loại bỏ một trong các dòng trống cũng sẽ được chấp nhận).
vim
và là thay thế các dòng trống bằng một dòng trống).