====== Удаление комментариев в конфигурационных файлах ======
Сначала очищаем строки содержащие решетку с начале строки, затем удаляем пустые строки.
$ sed -i -e 's/#.*//' -e '/^$/d' filename.conf
Можно для удобства создать свою комманду, передав которой имя файла в качестве аргумента добьемся того же результата:
$ touch cc # или /usr/bin/cc
$ chmod +x cc
$ echo "sed -i -e 's/#.*//' -e '/^$/d' $1" > cc
$ cat ssh_config
Include /etc/ssh/ssh_config.d/*.conf
Host *
# PasswordAuthentication yes
# HostbasedAuthentication no
# GSSAPIAuthentication no
# ProxyCommand ssh -q -W %h:%p gateway.example.com
# RekeyLimit 1G 1h
# UserKnownHostsFile ~/.ssh/known_hosts.d/%k
SendEnv LANG LC_*
HashKnownHosts yes
GSSAPIAuthentication yes
$ ./cc ssh_config
$ cat ssh_config
Include /etc/ssh/ssh_config.d/*.conf
Host *
SendEnv LANG LC_*
HashKnownHosts yes
GSSAPIAuthentication yes