Одним из расширений для chrome/firefox, которое я считаю очень полезным, является Edit with Emacs , которое я использовал для замены "It's All Text", когда оно перестало существовать.
Расширение добавляет кнопку в каждую текстовую область на странице, при нажатии на которую текущее содержимое копируется в редактор Emacs, где вы можете его редактировать.Когда это сделано, текст отправляется обратно в текстовую область. Я использовал его для создания этого ответа.
Там написано, что он может работать с другими редакторами, но у меня нет примеров, чтобы привести вам.
Пропустить
sed '/^[[:blank:]]*$/d'
Эта sed
команда удаляет все строки, которые пусты или содержат только пробелы и/или знаки табуляции. Регулярное выражение ^[[:blank:]]*$
соответствует пустым/пустым строкам, а замыкающее d
— это команда редактирования sed
, которая их удаляет.
Например:
sed '/^[[:blank:]]*$/d' <file >newfile
Файл newfile
будет отредактированным вариантом file
с удаленными пустыми строками.
В качестве альтернативы можно выводить только строки, содержащие не -пустые символы:
sed -n '/[^[:blank:]]/p' <file >newfile
Печатает каждую строку, содержащую хотя бы один символ, кроме пробела или табуляции. Остальные строки игнорируются. Параметр -n
для sed
отключает вывод каждой строки по умолчанию, а конечная p
— это команда sed
, которая выводит текущую строку (, если она соответствует предыдущему регулярному выражению ).
если вы хотите избавиться от строк, содержащих только пробелы, а также от пустых строк:
grep '[^ ]' # ie, match any lines with at least 1 char different from space
альтернативно:
grep -v '^ *$' # ie, hide lines that only contain spaces (0 or n spaces, ie empty lines as well)
если вы также хотите избавиться от пустых строк или строк с помощью только «табуляции или пробелов»
grep -v "^[ $(printf '\t')]*$"
Обязательноеawk
-базовое решение:
awk 'NF' input.txt
Будут напечатаны только строки, в которых awk
обнаружено хотя бы одно «поле» (, т. е. счетчик полей NF
не равен -нулю ). Обратите внимание, что это также удалит пустые строки в том смысле, что они содержат только пробелы.