Назад | Перейти на главную страницу

Как написать скрипт для печати строки раскомментации

У меня очень длинный файл конфигурации без комментариев и строки раскомментации. Теперь я хочу распечатать строки без комментариев.

# LOCAL PATHNAME INFORMATION
#
# The queue_directory specifies the location of the Postfix queue.
# This is also the root directory of Postfix daemons that run chrooted.
# See the files in examples/chroot-setup for setting up Postfix chroot
# environments on different UNIX systems.
#
queue_directory = /var/spool/postfix

# The command_directory parameter specifies the location of all
# postXXX commands.
#
command_directory = /usr/sbin

Я хочу, чтобы на выходе были строки без комментариев

queue_directory = / var / spool / postfix

каталог_команды = / usr / sbin

egrep -a -v '^[[:space:]]*#' config_file | egrep -a '[[:print:]]' | less

будет учитывать пробелы перед #. Подключите его к меньшему количеству, и вы сможете легко его просмотреть

замените config_file на $ 1 и поместите строку в / usr / local / bin / cless и chmod it + x, и у вас будет хороший маленький скрипт, когда он вам понадобится.

cless config_file

Предположим, что закомментированные строки начинаются с символа «#» в первой позиции:

grep -v '^#' config_file

напечатает все строки, которые не начинаются с "#" в файле "config_file".