Puncte:0

Selectarea opțiunilor de meniu cli din scriptul meu bash

drapel ao

Rulez un script bash, dar procesul se blochează când atinge un meniu în care trebuie să facă o selecție Înțeleg că, pentru DA, pot folosi -y în comenzile mele, dar în cazul în care:

  1. Trebuie să selectez/introduc un număr dintr-o listă de opțiuni

  2. Introduceți un nume sau un e-mail

Cum pot face acest lucru?

Destul de ciudat că majoritatea rezultatelor căutării returnează cum se creează un meniu folosind bash, dar nu cum se face ca un script să introducă selecții/valori.

Romeo Ninov avatar
drapel in
Fără sursa scriptului, cu greu vă putem ajuta
Puncte:1
drapel cn

Ai putea doar trimite un text cu răspunsurile la comandă:

printf „bot\nn\nJava” | ./întrebări.sh

Sau folosiți aştepta ca astfel:

#!/usr/bin/expect -f

setați timeout -1
spawn ../4/questions.sh

așteaptă „Numele tău:”
trimite -- "așteaptă-te\n"

așteptați „Ești om?\r
da/n: "
trimite -- "n\r"

așteptați „Care este limbajul dvs. de programare preferat?\r
Raspunsul tau: "
trimite -- „Java\r”

așteaptă eof

mai multe informatii aici https://www.baeldung.com/linux/bash-interactive-prompts

Tlink avatar
drapel ao
Mulțumesc @ttsakpc, cum rămâne cu selecțiile din ecrane ca acesta? https://images.app.goo.gl/uwRDDpBPkN3JxeGk8
ttsakpc avatar
drapel cn
Cred că ar trebui să funcționeze și cu „așteaptă”. Dacă nu, puteți încerca `empty-expect` așa cum este menționat aici https://stackoverflow.com/questions/66199156/how-can-i-make-a-bash-inputmenu-dialog-start-with-rename-automatically-clicked

Postează un răspuns

Majoritatea oamenilor nu înțeleg că a pune multe întrebări deblochează învățarea și îmbunătățește legătura interpersonală. În studiile lui Alison, de exemplu, deși oamenii își puteau aminti cu exactitate câte întrebări au fost puse în conversațiile lor, ei nu au intuit legătura dintre întrebări și apreciere. În patru studii, în care participanții au fost implicați în conversații ei înșiși sau au citit transcrieri ale conversațiilor altora, oamenii au avut tendința să nu realizeze că întrebarea ar influența – sau ar fi influențat – nivelul de prietenie dintre conversatori.