Как я могу выполнить команду SSH с нумерацией страниц Heredoc
Я пытаюсь выполнить команды в сеансе SSH heredoc, используя что-то вроде этого:
ssh -tt user@domain << 'END' > ./file.txt
some command
END
Команда выполнена и сохранена часть вывода в файле file.txt. Проблема заключается в том, что программа запрашивает ввод или пробел, чтобы продолжить показ вывода (весь вывод имеет тысячи строк)
Как я могу отправить один или несколько ENTER после первой команды? Я пытался использовать какую-то команду \n\n\n, но она не работает.
1 ответ
Просто добавьте пустую строку к вводу heredoc.
Но на самом деле команда может читать с терминала, а не со стандартного ввода. Тогда это не сработает.
Вы, возможно, сами вызываете эту проблему, принудительно распределяя псевдотерминал с помощью -t
переключатель. Без псевдотерминалов команды обычно не разбивают на страницы (не имея "терминала" для разбивки на страницы) и имеют тенденцию использовать стандартный ввод для чтения.
Попробуй удалить -t
переключатель. В любом случае его не следует использовать для автоматизации. Это для интерактивных сессий.