Временное отключение защиты молли -

Попробуйте этот цикл. Настройте его под свои нужды.

i=0
for file in *; do
    line=""
    line="$(grep -hm1 'Minimum' "${file}")"
    [ -z "$line" ] || echo "$line" > new"${i}".txt
    ((i++))
done

Измените *в этой строке:for file in *; doна свой набор файлов.

Позаботьтесь об отсеивании любого нежелательного вывода grep, который может появиться.

0
14.07.2019, 00:45
1 ответ

По умолчанию molly-guardзапрашивает имя хоста только в том случае, если считает, что оно находится в интерактивном входе в систему SSH. Он определяет «интерактивный» статус, проверяя, подключен ли его стандартный входной поток к чему-то, что ведет себя как терминал. (В частности, его скрипт 30-query-hostnamesub -выполняет test -t 0 || exit 0перед тем, как перейти к коду, выдающему приглашение.)

Вы можете принудительно провалить этот тест, запустив сценарий со стандартным вводом, перенаправленным с чего-то, что не является терминалом. /dev/nullбыло бы обычным выбором, что-то вроде:

$ my_script_that_will_trigger_a_reboot </dev/null

Если вашему сценарию необходимо получить ввод с терминала перед запуском перезагрузки, и поэтому вы не можете запустить сценарий с перенаправлением стандартного ввода, вы можете изменить сценарий так, чтобы он перенаправлял стандартный ввод только для команды reboot. Возможно, даже дайте вашему сценарию опцию, которая говорит ему, следует ли выполнять перенаправление на reboot, чтобы по умолчанию он все еще подвергался вмешательству molly-guard.

1
28.01.2020, 02:39

Теги

Похожие вопросы