echo "$status" | awk '{printf("%s %s %-20s %20s %s %s\n", $1, $2, $3, $4, $5, $6)}'
Будет производиться
component_name : TEZ_CLIENT recovery_enabled : true
component_name : WEBHCAT_SERVER recovery_enabled : true
component_name : YARN_CLIENT recovery_enabled : true
component_name : ZKFC recovery_enabled : true
component_name : ZOOKEEPER_CLIENT recovery_enabled : true
component_name : ZOOKEEPER_SERVER recovery_enabled : true
Формат %-20s
резервирует 20 символов для строки с выравниванием по левому краю -, а формат %20s
резервирует 20 символов для строки с выравниванием по правому краю -. Отрегулируйте 20
s в соответствии с желаемым форматом.
В предыдущем воплощении этого вопроса у вас были различные преобразования с использованием sed
и фильтрация с помощью grep
. Вполне вероятно, что это также можно сделать в том же скрипте awk
непосредственно из исходного файла. Или, если файл представляет собой файл JSON (, как вы говорите в комментариях ), непосредственно jq
из того же файла.
Если я не ошибаюсь, несвязанные зоны-заглушки -предназначены для указания на авторитетные серверы имен, а не на другие рекурсивные серверы имен. Несвязанный сервер с определенными локальными зонами -на самом деле не является уполномоченным сервером имен. Я думаю, есть два варианта:
указать на несвязанный сервер как зону пересылки -или
используйте что-то вроде NSD или BIND в качестве авторитетного сервера имен вместо несвязанного.