Найти тему
Half Smart Home

Linux grep - вывод содержимого файла без пустых и закомментированных строк

Иногда надо вывести содержимое конфигурационного файла, но в них часто много закоментированных строк и/или пустых строк. Чтобы не выводить эти строки можно воспользоваться командой grep

например:

cat sysctl.conf | grep -v ^# | grep -v ^$

либо короче

cat sysctl.conf |  grep -Ev '^\s*(;|#|$)'

но все равно долго набирать такую конструкцию из скобок и спецсимволов, поэтому можно добавить alias для команды. Делается это следующим способом:

В файл ~/.bashrc добавляется строка:

alias grep-v="grep -Ev '^\s*(;|#|$)'"

после чего необходимо выполнить команду

source ~/.bashrc

либо перезайти в оболочку для применение алиаса.

После этого можно использовать алиас grep-v, например:

grep-v /etc/sysctl.conf