dialog: Cum de a crea meniuri în script-urile dvs.

dialog, mensajebox, fir, backtittle, scenariu, titlul I, bash, debian, ubuntu

Dialog este o comandă de GNU / Linux, care vă permite să creați casete de dialog în terminal pentru tine de a utiliza în script-urile de programare, O să-ți arăt cum să utilizați această comandă.

Pentru realizarea acestui articol am basadoen comandă manuală și următoarele site-uri da mulțumirile mele sincere creatorilor.

http://ovtoaster.com/scripts-en-linux-con-estilo/
http://linuxgazette.net/101/sunil.html

Culorile în aplicații și sisteme

texte scrise în linia de comandă: albastru
Ieșire în linia de comandă: Verde
Numele de fișiere și conținutul fișierului: maro

Instalare Dialog

Pentru a utiliza acest instrument în primul lucru pe Linux vă faceți este să instalați

Ubuntu

sudo apt-get install de dialog

Debian

apt-get install de dialog

Palarie rosie

yum install de dialog

Suse

Zypper dialog Instalare

sintaxă

Pentru cutii cu o singură opțiune.

așa <lățime-of-box> <Înaltă de-box> este reprezentată de valori numerice, dacă 0 Acestea sunt conforme cu conținutul.

dialog <opțiuni comune> <opţiuni de box> <lățime-of-box> <Înaltă de-box>

Exemplu:

dialog --title "titlul I"  --da nu "La fel ca și roșu?" 0 0

Pentru cazurile cu mai multe opțiuni

Este numai pentru cutii de tip listă de verificare, Meniu Despre radiolist. Dacă ne 0 în <numărul-de-opțiuni vizibile> Se adaptează automat la numărul de opțiuni.

dialog <opțiuni comune> <opţiuni de box> <lățime-of-box> <Înaltă de-box> <numărul-de-opțiuni vizibile>.

Exemplu:

dialog --checklist "Alegeți opțiunile dorite:" 0 0 0  1 brânză 2 "muștar" pe  3 anșoa off

opțiuni comune

Acestea sunt opțiuni care sunt prezente în cele mai multe tipuri de casete de dialog “dialog” Cele mai frecvente sunt următoarele:

 

titluri de valoare

dialog, mensajebox, fir, backtittle, scenariu, titlul I, bash, debian, ubuntu

–titlu

Este folosit pentru a pune titlu la dialogul.

–backtitle

Este titlul fundalului ferestrei.

Butoane de text Modificare

–da-etichetă

Schimbarea YES cuvânt în casetele de dialog pentru care doriți.

–bine–eticheta

Modificați cuvântul OK în casetele de dialog pentru care doriți.

–anulați eticheta

Schimbarea cuvântul CANCEL de casete de dialog pentru care doriți.

–exit-label

Schimbarea EXIT cuvânt din casetele de dialog pentru care doriți.

–fara eticheta

Schimbarea cuvântul NO în casetele de dialog pentru care doriți.

–colţ

Scoateți butonul OK din caseta de dialog trebuie să apăsați Enter pentru a intra.

comandă de ieșire

Aceste variabile vă permit să decidă în cazul în care va opțiunile selectate în comanda implicită va ieși de ieșire de eroare dacă putem să-l scoatem pe ecran.

–stderr

Ieșirea de comandă pentru a stderr dacă vom alege această opțiune se poate obține de ieșire într-un fișier prin adăugarea la sfârșitul liniei de dialog:

2><pentru a salva fișierul de ieșire>

–stdout

Cu această opțiune, vom afișa rezultatele comenzii am folosi atunci când vreau să magazin într-o comandă variabilă, dar nu doresc să fie scrise într-un fișier temporar, mai târziu, în exemple, vom vedea cum.

 

opţiuni de Box

Caseta mesaj (–MsgBox)

dialog, mensajebox, fir, backtittle, scenariu, titlul I, bash, debian, ubuntu

Acesta servește pentru a pune un mesaj pe ecran până când utilizatorul apasă introduceți.

dialog --title "titlu" --MsgBox "Hello World" 0 0

Meniu DA / NU (–da nu)

dialog, da nu, scenariu, bash, debian, ubuntu

Acesta servește pentru a răspunde la întrebări cu da / nu, dacă răspunsul este DA întoarce 0 În cazul în care răspunsul este NU se întoarce 1

dialog --title "titlul I"  --da nu "La fel ca și roșu?" 0 0

infobox (–infobox)

dialog, infobox, scenariu, titlul I, bash, debian, ubuntu

Această casetă afișează informațiile pe care le dorim este de dorit să se adauge un somn (comandă în așteptare x secunde pentru a continua) pentru ao vizualiza.

dialog --infobox "așteptați 4 secunde" 0 0 ; dormi 4

cutia de capăt (–InputCasuta)

dialog, InputCasuta, scenariu, titlul I, bash, debian, ubuntu

Acesta este utilizat pentru colectarea datelor din.

 dialog --title "nume" --InputCasuta "Pune numele tau:" 0 0

caseta pentru parolă (–PasswordBox)

dialog, PasswordBox, scenariu, bash, debian, ubuntu

Este la fel ca caseta de intrare, dar caracterele nu sunt afișate, care sunt scrise.

 dialog --title "parolă" --PasswordBox "Pune parola:" 0 0

cutie (–casetă de text)

dialog, tesxtbox, scenariu, bash, debian, ubuntu, linux, GNU / Linux

Cutia este un vizualizator de fișiere și ne arată fișierul indicați.

dialog --title "Archivo fstab" --textbox / etc / fstab 0 0

meniul Box (–meniul)

dialog, meniul, scenariu, bash, debian, ubuntu, linux, GNU / Linux, caseta de meniu

Putem alege o opțiune între mai multe opțiuni numerotate

--menu dialog "Cel mai bun tortilla este:" 0 0 0 1 "cu ceapa" 2 "fără ceapă" 3 "cu piminetos" 

Caseta listă de verificare (–Lista de verificare)

dialog, Lista de verificare, scenariu, bash, debian, ubuntu, linux, GNU / Linux

Este un meniu cu mai multe opțiuni pe care le putem alege mai multe. Opțiuni pentru a pune în pe care va fi aprins și pus pe de pe şters.

dialog --checklist "Alegeți opțiunile dorite:" 0 0 0  1 brânză 2 "muștar" pe  3 anșoa off

O mențiune specială în termen de listă de verificare pentru opțiunea –-Ieșire separată care returnează o linie pentru fiecare selecție făcută foarte utile pentru diferite comenzi executa pentru fiecare selecție făcută.

Caseta radiolist (–radiolist)

dialog, radiolist, scenariu, bash, debian, ubuntu, linux, GNU / Linux

Este un meniu cu mai multe opțiuni pe care le putem alege doar un singur.

dialog --radiolist "Alege omletă tau preferat:" 0 0 0 1 "cu ceapa" de pe  2 "Nici o ceapa" pe 3 "ardei" de pe 4 "asparagus" de pe

cutie calendar (–calendar)

dialog, calendar, calendar, scenariu, bash, debian, ubuntu, linux, GNU / Linux

Este un calendar în care puteți alege o dată.

dialog --title "calendar" --calendar "Alegeți o săgeată" 0 0

Alte opțiuni caseta

În plus față de opțiunile caseta care le-am văzut, există și alte opțiuni care ar putea fi interesant de a utiliza pentru a le știu, nu ezitați să vină în ajutorul.

dialog om

Cum se utilizează datele obținute de dialog

Pentru a utiliza o serie de date colectate de script casetele de dialog există varaias opțiuni de dialog am găsit-am, dar cu siguranță au loc pentru tine, dar ea nu ezitați să comunicarmelas și se adaugă în post.

ieșire Redirecționarea către un dialog de fișier.

Putem stoca datele de ieșire ale comenzii într-un fișier de dialog, de obicei, vom pune în / tmp și șterge după utilizare, apoi am pus un script cu un exemplu explicat.

#!/bin/bash
# De Ignacio Alba Obaya
# https://aplicacionesysistemas.com
# executați dialogul pune în finală 2>/tmp / nombre.tmp. $$ 
# stoca într-un fișier numele introdus.
# amintiți-vă că două> redirecționează de ieșire de eroare într-un fișier.
dialog --title "nume" --InputCasuta "Pune numele tau:" 0 0 2>/tmp / nombre.tmp. $$
# șterge ecranul
clar
# arată numele stocat
pisica /tmp/nombre.tmp.$$
# ștergeți fișierul cu numele
rm -f /tmp/nombre.tmp.$$
# Ai face o pauză de linie, astfel încât nu putem acumula prompt
echo -e "\n"

Stocarea răspunsului într-o variabilă.

Pentru a stoca rezultatul, vom face acest lucru prin crearea unei funcții și apelarea dintr-o variabilă.

#!/bin/bash
# De Ignacio Alba Obaya
# https://aplicacionesysistemas.com
# Dialog stoca rezultatul într-o variabilă
# am creat fundialog funcția
fundialog = ${fundialog = dialog}
# Vom crea o dată variabilă cu ieșire de dialog 
# redireccinando cu ieșire de dialog --stdout 
# standardul de ieșire, Rețineți că funcția este între 
# accente de cheie [ în cazul în care nu nu funcționează.
Fecha = `$ fundialog --stdout --title "calendar" --calendar "Alegeți o dată" 0 0`
# Afișați data capturat
Data echo $

Cum de a gestiona ieșirile de lista de verificare

De asemenea, trebuie să fie în măsură să gestioneze mai multe opțiuni de ieșire QUAD avem o listă de control, astfel încât fiecare opțiune de declanșare diferite evenimente. O fetter de a face acest lucru este după cum urmează:

#!/bin/bash
# De Ignacio Alba Obaya
# https://aplicacionesysistemas.com

# Am creat funcheck varaible în care stocăm 
# dialog comandă cu opțiunea --separate-ieșire
funcheck =(dialog --separate-ieșire --checklist "Selectați grupurile din care fac parte:" 0 0 0)

# Definim opțiunile de pe ecran
# va apărea aprins ne-am pus pe.
opţiuni =(1 "opțiune 1" pe 
 2 "opțiune 2" de pe
 3 "opțiune 3" de pe
 4 "opțiune 4" de pe
 5 "opțiune 5" pe
 6 "opțiune 6" de pe
 7 "opțiune 7" de pe)

# Am creat selecțiile funcționale cu opțiuni de rulare funcheck 
# și înainte de ieșire la terminalul pentru a alerga următoare
# comenzi
selecții = $("${funcheck[@]}" "${opțiuni[@]}" 2>&1 >/dev / tty)

# curățați ecranul
clar

# adăugați o pentru a rula o funcție de comandă 
# Puteți schimba opțiunile selectate de ecou 
# orice comenzi sau scripturi
pentru selecția în $ selecții
face
 $ Caz de selecție în
 1)
 ecou "Ai ales opțiunea 1"
 ;;
 2)
 ecou "Ai ales opțiunea 2"
 ;;
 3)
 ecou "Ai ales opțiunea 3"
 ;;
 4)
 ecou "Ai ales opțiunea 4"
 ;;
 5)
 ecou "Ai ales opțiunea 5"
 ;;
 6)
 ecou "Ai ales opțiunea 6"
 ;;
 7)
 ecou "Ai ales opțiunea 7"
 ;;
 ESAC
Terminat

Concluzii privind Dialog

În opinia mea de dialog este un mod elegant de a crea meniuri pentru script-uri noastre pot crea cu ușurință programe pentru terminale.

Darte las gracias por leer nuestro blog espero que te guste nuestro contenido, te pediria que no olvides dar +1 o compartir en las redes sociales, no ganamos nada con este blog y es para nosotros cada me gusta o mas 1 es una pequeña recompensa 😀


Despre Ignacio Alba Obaya

Microcomputer tehnic și antrenor pentru ocuparea forței de muncă. Iubitor de noi tehnologii. Manager de GNU / Linux și Windows.

2 comentarii:

Lasă un Răspuns

Adresa ta de email nu va fi publicată.