Я пишу базовый скрипт на bash для автоматической установки нескольких пакетов на новые машины (по сути, первый скрипт, запускаемый на новой машине, прежде чем делать что-либо еще). Например, я загружаю openssh-сервер и python.
Моя цель — просто запустить скрипт в режиме sudo, подождать несколько минут и начать работу. Единственная проблема, с которой я сталкиваюсь, заключается в том, что машина требует, чтобы пользователь вводил «y», когда это необходимо, и я не могу найти способ обойти это.
Это всего лишь пример моего скрипта:
#!/bin/bash
sudo apt update
sudo apt install openssh-server
sudo apt-get install python3
что я ожидаю, так это просто запустить эту команду и позволить ей работать без пользователя и поставить «y», когда это необходимо.
sudo bash start-script.sh
так что мне просто нужно сделать apt -y install openssh-server @Inian?
Используйте опцию -y команды apt-get. Со страницы руководства apt-get:
-y, --yes, --assume-yes
Automatic yes to prompts; assume "yes" as answer to all prompts and
run non-interactively. If an undesirable situation, such as
changing a held package, trying to install a unauthenticated
package or removing an essential package occurs then apt-get will
abort. Configuration Item: APT::Get::Assume-Yes.
apt-get
имеет возможность автоматически отвечать «да» на подсказки. Поиск-y
в linux.die.net/man/8/apt-get