Search code examples
linuxbashcentos

Answer "Yes" or "No" ONLY IF a command request it


I a writing a script. There is a command that colud request to answer yes or no to override a certain file. I want to automate the script to answer YES or NO ONLY IF the command request it (i don't want to echo yes inside the command).

The command I am referring to is ssh-keygen, which requires to override the key in case already exists.

In my mind there is something like this...

if (ssh-keygen requests input) --> Sends yes to the ssh-keygen

In particular, I am using the following command:

ssh-keygen -t rsa -b 4096 -N '' -f ~/.ssh/id_rsa -q

Even if i am using -q, still asks yes or no to override the file.

Thanks in advance


Solution

  • i suggest using the echo command to send "yes" to the command.

    echo "yes" | ssh-keygen -t rsa -b 4096 -N '' -f ~/.ssh/id_rsa -q