sed, чтобы удалить все пробелы из строки
Я хочу использовать sed
удалить все пробелы из текстового файла. В настоящее время я использую эту команду:
sed 's/ //' test.txt > test2.txt
Это работает в том смысле, что удаляет первый пробел в каждой строке, но оставляет остальные.
Есть ли способ сказать sed
повторить для пробелов в строке перед переходом к следующему или это сценарий многократного выполнения сценариев для одного и того же файла?
В настоящее время файл мал для тестирования, но вскоре он будет увеличен до гораздо больших файлов, поэтому было бы неплохо минимальное промывание и повторение. Какие-нибудь мысли?
В настоящее время я получаю это с помощью команды выше:
bruteforce
allthe kings men
moneymoney money
ifi was a rich girl
Когда то, что я хотел бы, это:
bruteforce
allthekingsmen
moneymoneymoney
ifiwasarichgirl
2 ответа
Вы должны использовать g
(глобальный) флаг, который делает sed
действовать на все совпадения шаблона в каждой строке, а не на первое совпадение в каждой строке:
sed 's/ //g' test.txt > test2.txt
Это также можно сделать с помощьюtr
, например,
tr -d ' ' < test.txt > test2.txt