Ejecutar el comando del sistema en ruby ​​e interactuar con él

Necesito ejecutar un comando en la línea de comandos que solicite una respuesta del usuario. En caso de que ayude el comando es:

gpg --recipient "Some Name" --encrypt ~/some_file.txt

cuando ejecutas esto, advierte sobre algo y luego pregunta:

Utilice esta clave de todos modos? (s / N)

Respondiendo 'y' vamos a terminar correctamente. He estado tratando de usar eljoya open4 pero no he podido hacerlo para especificar la 'y' correctamente. Esto es lo que intenté:

Open4::popen4(cmd) do |pid, stdin, stdout, stderr|
  stdin.puts "y"
  stdin.close

  puts "pid        : #{ pid }"
  puts "stdout     : #{ stdout.read.strip }"
  puts "stderr     : #{ stderr.read.strip }"
end

¿Qué estoy haciendo mal? ¿Es lo que estoy haciendo incluso posible?

Respuestas a la pregunta(2)

Su respuesta a la pregunta