Câu trả lời:
Để "xóa tất cả các khoảng trống" có thể có nghĩa là một trong những điều khác nhau:
0x20.\t"\n" và những thứ khácNếu sednó không phải là một yêu cầu cho một số lý do ẩn, tốt hơn nên sử dụng công cụ phù hợp cho công việc.
Lệnh trnày có công dụng chính trong việc dịch (do đó tên "tr") một danh sách các ký tự thành một danh sách các ký tự khác. Như một trường hợp góc, nó có thể dịch sang danh sách trống của các ký tự; Tùy chọn -d( --delete) sẽ xóa các ký tự xuất hiện trong danh sách.
Danh sách các ký tự có thể sử dụng các lớp ký tự theo [:...:]cú pháp.
tr -d ' ' < input.txt > no-spaces.txttr -d '[:blank:]' < input.txt > no-spaces.txttr -d '[:space:]' < input.txt > no-spaces.txtsedVới sed, [:...:]cú pháp cho các lớp ký tự cần được kết hợp với cú pháp cho các bộ ký tự trong biểu thức chính quy [...], dẫn đến kết quả hơi khó hiểu [[:...:]]:
sed 's/ //g' input.txt > no-spaces.txtsed 's/[[:blank:]]//g' input.txt > no-spaces.txtsed 's/[[:space:]]//g' input.txt > no-spaces.txttr -d ' ' < input.txt > no-spaces.txt.
tr. (Bạn có nhìn thấy nó bất cứ nơi nào khác?)
Bạn có thể sử dụng để loại bỏ tất cả các khoảng trắng trong file:
sed -i "s/ //g" file
man sed | sed "s/ //g"
/bằng một ký tự khác, ví dụ:sed "ss ssg"