Имитация нажатия клавиши ENTER в скрипте bash
Я создал очень простой скрипт bash, который запускает несколько команд.
одна из этих команд должна быть введена пользователем во время выполнения. то есть он спрашивает пользователя "вы хотите бла-бла-бла?", Я хочу просто отправить нажатие клавиши enter на это, чтобы скрипт был полностью автоматизирован.
Мне не придется ждать ввода или что-нибудь во время выполнения, его достаточно просто отправить нажатие клавиши и входной буфер будет обрабатывать все остальное.
5 ответов:
echo -ne '\n' | <yourfinecommandhere>или используя неявную новую строку, которую генерирует echo (спасибо Marcin)
echo | <yourfinecommandhere>
вот пример использования
expect:#!/usr/bin/expect set timeout 360 spawn my_command # Replace with your command. expect "Do you want to continue?" { send "\r" }проверка:
man expectдля получения дополнительной информации.
вы можете просто использовать да.
# yes "" | someCommand
вы могли бы использовать ожидал (человек ожидал поставляется с примерами).
Comments