Odpowiedzi:
„Usunąć wszystkie puste spacje” może oznaczać jedną z różnych rzeczy:
0x20.\t”\n” i inneJeśli sedz jakiegoś ukrytego powodu nie jest to wymagane, lepiej użyj odpowiedniego narzędzia do pracy.
Polecenie to trma głównie zastosowanie w tłumaczeniu (stąd nazwa „tr”) listy znaków na listę innych znaków. Jako przypadek narożny może tłumaczyć na pustą listę znaków; Opcja -d( --delete) usuwa znaki pojawiające się na liście.
Lista znaków może wykorzystywać klasy znaków w [:...:]składni.
tr -d ' ' < input.txt > no-spaces.txttr -d '[:blank:]' < input.txt > no-spaces.txttr -d '[:space:]' < input.txt > no-spaces.txtsedW przypadku sed [:...:]składnia klas znaków musi być połączona ze składnią zestawów znaków w wyrażeniach regularnych [...], co powoduje nieco zamieszanie [[:...:]]:
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. (Widzisz to gdzieś indziej?)
Możesz użyć tego do usunięcia wszystkich białych znaków w file:
sed -i "s/ //g" file
man sed | sed "s/ //g"
/inną postacią, np .:sed "ss ssg"