Xóa tất cả các dòng chứa ký tự a trong một tệp và ghi nó vào một tệp khác python
Trong các ví dụ sau, lệnh sed loại bỏ các dòng trong tệp ở một vị trí cụ thể trong tệp 1. Xóa dòng đầu tiên hoặc dòng tiêu đề Tùy chọn d trong lệnh sed được sử dụng để xóa một dòng. Cú pháp để xóa một dòng là > sed 'Nd' file Ở đây N chỉ ra dòng thứ N trong một tệp. Trong ví dụ sau, lệnh sed xóa dòng đầu tiên trong tệp > sed '1d' file 2. Xóa dòng cuối cùng hoặc dòng chân trang hoặc dòng giới thiệu Lệnh sed sau đây được sử dụng để xóa dòng chân trang trong một tệp. $ chỉ ra dòng cuối cùng của một tập tin > sed '$d' file 3. Xóa dòng cụ thể Điều này tương tự như ví dụ đầu tiên. Lệnh sed bên dưới xóa dòng thứ hai trong một tệp > sed '2d' file 4. Xóa phạm vi dòng Lệnh sed có thể được sử dụng để xóa một loạt các dòng. Cú pháp được hiển thị bên dưới > sed 'm,nd' file Ở đây m và n là số dòng tối thiểu và tối đa. Lệnh sed xóa các dòng từ m đến n trong tệp. Lệnh sed sau đây xóa các dòng từ 2 đến 4 > sed '2,4d' file 5. Xóa các dòng khác với dòng đầu tiên hoặc dòng tiêu đề Sử dụng phủ định (. ) với tùy chọn d trong lệnh sed. Lệnh sed sau xóa tất cả các dòng trừ dòng tiêu đề > sed '1!d' file 6. Xóa các dòng khác với dòng cuối cùng hoặc dòng cuối trang > sed '$!d' file 7. Xóa các dòng khác với phạm vi đã chỉ định ________số 8Ở đây, lệnh sed xóa các dòng khác với dòng thứ 2, thứ 3 và thứ 4 8. Xóa dòng đầu tiên và dòng cuối cùng Bạn có thể chỉ định danh sách các dòng bạn muốn xóa trong lệnh sed với dấu chấm phẩy làm dấu phân cách > sed 'Nd' file0 9. Xóa dòng trống hoặc dòng trống > sed 'Nd' file1 ^$ chỉ ra lệnh sed để xóa các dòng trống. Tuy nhiên, sed này không xóa các dòng có chứa khoảng trắng Lệnh Sed để xóa dòng – Dựa trên đối sánh mẫuTrong các ví dụ sau, lệnh sed xóa các dòng trong tệp khớp với mẫu đã cho 10. Xóa các dòng bắt đầu bằng ký tự được chỉ định > sed 'Nd' file2 ^ là chỉ định bắt đầu của dòng. Lệnh sed ở trên xóa tất cả các dòng bắt đầu bằng ký tự 'u' 11. Xóa các dòng kết thúc bằng ký tự đã chỉ định > sed 'Nd' file3 $ là để chỉ cuối dòng. Lệnh trên xóa tất cả các dòng kết thúc bằng ký tự 'x' 12. Xóa các dòng viết hoa hoặc viết hoa > sed 'Nd' file4 13. Xóa các dòng có chứa một mẫu > sed 'Nd' file5 14. Xóa các dòng bắt đầu từ một mẫu cho đến dòng cuối cùng > sed 'Nd' file6 Ở đây lệnh sed xóa dòng phù hợp với mẫu fedora và cũng xóa tất cả các dòng ở cuối tệp xuất hiện bên cạnh dòng phù hợp này 15. Chỉ xóa dòng cuối cùng nếu nó chứa mẫu > sed 'Nd' file7 Ở đây $ chỉ ra dòng cuối cùng. Nếu bạn chỉ muốn xóa dòng thứ N nếu nó chứa một mẫu, thì thay cho $ hãy đặt số dòng Ghi chú. Trong tất cả các ví dụ trên, lệnh sed in nội dung của tệp trên thiết bị đầu cuối unix hoặc linux bằng cách xóa các dòng. Tuy nhiên, lệnh sed không xóa các dòng khỏi tệp nguồn. Để Xóa các dòng khỏi tệp nguồn, hãy sử dụng tùy chọn -i với lệnh sed > sed 'Nd' file8 Nếu bạn không muốn xóa các dòng khỏi tệp nguồn ban đầu, bạn có thể chuyển hướng đầu ra của lệnh sed sang một tệp khác Đưa ra một tệp văn bản, đọc nội dung của tệp văn bản đó theo từng dòng và chỉ in những dòng không bắt đầu bằng tiền tố đã xác định. Đồng thời lưu trữ các dòng in đó trong một tệp văn bản khác. Có những cách sau đây mà nhiệm vụ này có thể được thực hiện Phương pháp 1. Sử dụng vòng lặp và startedwith() Trong phương pháp này, chúng tôi đọc nội dung của tệp theo từng dòng. Trong khi đọc, chúng tôi kiểm tra xem dòng có bắt đầu bằng tiền tố đã cho hay không, chúng tôi chỉ cần bỏ qua dòng đó và in nó. Cũng lưu trữ dòng đó trong một tệp văn bản khác ví dụ 1 Giả sử tệp văn bản mà các dòng sẽ được đọc được đưa ra dưới đây Tệp văn bản gốc Python3> sed '1d' file8 > sed '1d' file9 > sed '$d' file0 > sed '$d' file1 > sed '$d' file2 > sed '$d' file3 > sed '$d' file4 > sed '$d' file5 > sed '$d' file6 > sed '1d' file80 > sed '1d' file81 > sed '1d' file82
> sed '1d' file83 > sed '1d' file84 > sed '1d' file85 > sed '1d' file86 > sed '$d' file2 > sed '$d' file3 > sed '$d' file4 > sed '1d' file90 > sed '$d' file6 > sed '1d' file80 > sed '1d' file93____182
> sed '1d' file95 > sed '1d' file96 ________ 197 ________ 198 ________ 199 ________ 200 > sed '$d' file01 > sed '$d' file02 > sed '$d' file03 > sed '$d' file02 > sed '$d' file05 > sed '$d' file06 > sed '$d' file07 > sed '$d' file08 > sed '1d' file861 > sed '$d' file10 > sed '1d' file82 > sed '$d' file2 > sed '$d' file2 > sed '1d' file866 > sed '1d' file867 |