En mi situación, necesitaba responder algunas preguntas sin S o N pero con texto o en blanco. Encontré que la mejor manera de hacer esto en mi situación era crear un archivo shellscript. En mi caso lo llamé autocomplete.sh
Necesitaba responder algunas preguntas para un exportador de esquemas de doctrina, por lo que mi archivo se veía así.
- Este es solo un ejemplo -
php vendor/bin/mysql-workbench-schema-export mysqlworkbenchfile.mwb ./doctrine << EOF
`#Export to Doctrine Annotation Format` 1
`#Would you like to change the setup configuration before exporting` y
`#Log to console` y
`#Log file` testing.log
`#Filename [%entity%.%extension%]`
`#Indentation [4]`
`#Use tabs [no]`
`#Eol delimeter (win, unix) [win]`
`#Backup existing file [yes]`
`#Add generator info as comment [yes]`
`#Skip plural name checking [no]`
`#Use logged storage [no]`
`#Sort tables and views [yes]`
`#Export only table categorized []`
`#Enhance many to many detection [yes]`
`#Skip many to many tables [yes]`
`#Bundle namespace []`
`#Entity namespace []`
`#Repository namespace []`
`#Use automatic repository [yes]`
`#Skip column with relation [no]`
`#Related var name format [%name%%related%]`
`#Nullable attribute (auto, always) [auto]`
`#Generated value strategy (auto, identity, sequence, table, none) [auto]`
`#Default cascade (persist, remove, detach, merge, all, refresh, ) [no]`
`#Use annotation prefix [ORM\]`
`#Skip getter and setter [no]`
`#Generate entity serialization [yes]`
`#Generate extendable entity [no]` y
`#Quote identifier strategy (auto, always, none) [auto]`
`#Extends class []`
`#Property typehint [no]`
EOF
Lo que me gusta de esta estrategia es que puedes comentar cuáles son tus respuestas y usando EOF una línea en blanco es solo eso (la respuesta predeterminada). Resulta, por cierto, que esta herramienta de exportación tiene su propia contraparte JSON para responder estas preguntas, pero lo descubrí después de hacer esto =).
para ejecutar el script simplemente esté en el directorio que desee y ejecútelo 'sh autocomplete.sh'
en la terminal.
En resumen, al usar << EOL & EOF en combinación con las líneas de retorno , puede responder a cada pregunta del mensaje según sea necesario. Cada nueva línea es una nueva respuesta.
Mi ejemplo solo muestra cómo se puede hacer esto con comentarios también usando el carácter `para que recuerde lo que es cada paso.
Tenga en cuenta que la otra ventaja de este método es que puede responder con más que solo Y o N ... ¡de hecho, puede responder con espacios en blanco!
Espero que esto ayude a alguien.