내 상황에서는 Y 또는 N없이 텍스트 또는 공백으로 몇 가지 질문에 답해야했습니다. 내 상황에서이 작업을 수행하는 가장 좋은 방법은 쉘 스크립트 파일을 만드는 것입니다. 제 경우에는 autocomplete.sh라고 불렀습니다.
교리 스키마 내보내기에 대한 몇 가지 질문에 답해야했기 때문에 파일이 다음과 같이 보입니다.
- 이것은 예시 일뿐입니다 -
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
이 전략에 대해 내가 좋아하는 점은 답변이 무엇인지 주석을 달 수 있고 EOF를 사용하여 빈 줄을 사용할 수 있다는 것입니다 (기본 답변). 이 내보내기 도구에는 이러한 질문에 답하기위한 자체 JSON 대응 도구가 있지만이 작업을 수행 한 후에 알아 냈습니다 =).
스크립트를 실행하려면 원하는 디렉토리에 'sh autocomplete.sh'
있고 터미널에서 실행하면 됩니다.
간단히 말해서 리턴 라인과 함께 << EOL & EOF 를 사용 하면 필요에 따라 프롬프트의 각 질문에 답할 수 있습니다. 각각의 새로운 줄은 새로운 답입니다.
내 예제는`문자를 사용하여 주석으로 어떻게 수행 할 수 있는지 보여 주므로 각 단계가 무엇인지 기억할 수 있습니다.
이 방법의 다른 장점은 Y 또는 N 이상으로 대답 할 수 있다는 것입니다. 사실 공백으로 대답 할 수 있습니다!
이것이 누군가를 도울 수 있기를 바랍니다.