Tôi muốn sử dụng sed để xóa các tab khỏi các dòng trống khác. Ví dụ: một dòng chỉ chứa \t\n
phải đổi thành \n
. Cú pháp cho điều này là gì?Làm cách nào để xóa các tab khỏi các dòng trống bằng sed?
Trả lời
sed
không biết về chuỗi thoát như \t
. Vì vậy, bạn sẽ phải theo nghĩa đen gõ một tab
trên giao diện điều khiển của bạn:
sed 's/^ *$//g' <filename>
Nếu bạn đang ở trên bash, thì bạn không thể gõ tab
trên console. Bạn sẽ phải làm ^V
và sau đó nhấn tab
. (Ctrl-V
và sau đó tab
) để in tab chữ.
Giải pháp được đăng khác sẽ hoạt động khi có 1 (và chỉ 1) trong dòng. Lưu ý rằng Raze2dust chỉ ra rằng sed yêu cầu bạn nhập một tab chữ. Một giải pháp thay thế là:
sed '/[^ ]/!s/ //g' file-name.txt
Tab này chỉ cách xa các dòng chỉ có tab. Lớp đảo ngược khớp với các dòng có chứa bất kỳ lỗi nào trong tab - sau đây '!' làm cho nó không khớp với các dòng đó - nghĩa là chỉ các dòng chỉ có các tab. Sự thay thế sau đó chỉ chạy trên những dòng đó, xóa tất cả các tab.
Để thay thế dòng trắng tùy ý với một dòng trống, sử dụng
sed -r 's/^\s+$//'
Cờ -r nói để sử dụng biểu thức thông thường kéo dài, và^\ s + $ mẫu phù hợp với tất cả các dòng với một số khoảng trắng nhưng không có nhân vật khác .
grep -o ".*" file > a; mv a file;
Và điều này làm những gì, chính xác? Bởi vì nó không làm những gì OP hỏi. –
không chắc chắn nếu trolling, nhưng nếu như vậy, rực rỡ .... – ansiart
Tôi đã nhận thấy \ t không được UNIX công nhận. Được nói, sử dụng khóa thực tế. Trong mã bên dưới, TAB thể hiện cách nhấn phím tab.
$ sed 's/TAB // g' oldfile> newFile
mũi thân: để đảm bảo bạn có các tab trong file bạn đang cố gắng để loại bỏ các tab từ việc sử dụng đoạn mã sau để xem nếu \ t xuất hiện
$ od -c filename
- 1. Ruby xóa các dòng trống khỏi chuỗi
- 2. Làm cách nào để xóa các ký tự X đầu tiên khỏi chuỗi bằng sed?
- 3. Làm cách nào để xóa bóng khỏi các tab JavaFX?
- 4. Xóa các dòng khỏi tệp với SED hoặc AWK
- 5. Xóa các dòng trống từ một tệp
- 6. Làm cách nào để xóa thêm các dòng trống khỏi tệp XML?
- 7. Làm cách nào để xóa các dòng trống khỏi văn bản trong PHP?
- 8. Làm cách nào để xóa các dòng trống khỏi đầu ra wmic?
- 9. Xóa tất cả các khoảng trống và các dòng trống
- 10. Xóa các dòng trống khỏi chuỗi, nhưng cho phép một dòng trống giữa mỗi dòng
- 11. Làm cách nào để xóa các phần tử trống khỏi dom bằng jQuery?
- 12. AWK xóa các dòng trống
- 13. Làm cách nào để thay thế nhiều dòng trống bằng một dòng trống trong bash?
- 14. Làm cách nào để xóa thụt lề tab khỏi nhiều dòng trong IDLE?
- 15. Cách xóa các ký tự không hợp lệ khỏi tệp xml bằng sed hoặc Perl
- 16. Xóa dòng trống cuối cùng
- 17. Xóa các dòng trống trong Notepad ++
- 18. Làm cách nào để xóa các ký tự dòng mới khỏi chuỗi?
- 19. AWK để bỏ qua các dòng trống
- 20. Trong Eclipse, làm cách nào các khoảng trống có thể hoạt động như các tab?
- 21. Làm cách nào để xóa các ký tự trống khỏi chuỗi trong JavaScript?
- 22. Xóa các khoảng trống không phá vỡ khỏi các chuỗi bằng cách sử dụng Python
- 23. Xóa tất cả các dòng trước khi khớp với sed
- 24. Xóa các từ trùng lặp trong một dòng với sed
- 25. Làm cách nào để xóa các hàng khỏi DataGridView?
- 26. Làm cách nào để xóa các giá trị khỏi QMap?
- 27. Làm cách nào để xóa các dòng trùng lặp khỏi một tệp?
- 28. thay thế các tab bằng một tab duy nhất trong sed
- 29. Làm cách nào để đặt các điểm dừng tab sau các khoảng trống trong LaTeX?
- 30. Làm cách nào để xóa các dòng khỏi một tệp lớn bằng Python, trong môi trường giới hạn
Nếu sử dụng bash, bạn cũng có thể thực hiện 'sed $ 's/^ \ t * $ // g'', vì sử dụng ký hiệu đô la trên một định dạng chuỗi được trích dẫn một lần các mã như \ t. –
tốt nhất Max! Không biết về nó. Bạn nên đặt câu trả lời đó như một câu trả lời riêng .. –
Bạn đủ gần. :) –