Добрый день!Есть файл вида:
1 aaa
2 bbb
3
4 [test.1]
5 host = 192.168.0.1
6 [test.2]
7 host = 192.168.0.2
Необходимо удалить перенос строки после [test.x]
Что я делаю:
sed ':a; N; /\[test\./s/\].*\n//g ; ta;' test.conf
Вывод (не удаляется перенос после [test.1]):1 aaa
2 bbb
3
4 [test.1]
5 host = 192.168.0.1
6 [test.2 7 host = 192.168.0.2
Если в исходном файле добавить дополнительный перенос строки:
1 aaa
2 bbb
3
4
5 [test.1]
6 host = 192.168.0.1
7 [test.2]
8 host = 192.168.0.2
То вывод правильный:1 aaa
2 bbb
3
4
5 [test.1 6 host = 192.168.0.1
7 [test.2 8 host = 192.168.0.2
Собственно вопрос почему не срабатывает удаление переноса из первого файла.
Если есть гуру SED'а, то можно ли сделать из строк:
1 [test.1]
2 host = 192.168.0.1
3 [test.2]
4 host = 192.168.0.2
сделать (цифры 1 и 2 брать из [test.х], могут быть не по порядку):
1 192.168.0.1
2 192.168.0.2