Am „începând cu bash și am găsit următoarele:
if test $first -lt $second then echo $first is lower than $second else if test $first -gt $second then echo $first is higher than $second else echo $first and $second are equals fi fi
Pentru a citi scriptul și a-l executa, știu ce face, dar nu pentru ce -lt și -gt sunt.
Poate cineva să-mi spună care este numele genul ăsta de „instrument” și ce fac ei (-lt și -gt)? Mulțumesc!
Comentarii
Răspuns
Este scurt pentru less than și greater than. Este folosit pentru compararea numărului întreg în bash. Puteți citi mai multe tastând man test:
.... INTEGER1 -gt INTEGER2 INTEGER1 is greater than INTEGER2 .... INTEGER1 -lt INTEGER2 INTEGER1 is less than INTEGER2 ....
Răspuns
Puteți găsi definiția -lt și -gt în documentația comenzii test (man test) sau documentația bash, deoarece test este o comandă încorporată în bash (ca în majoritatea celorlalte shell-uri).
-lt și -gt sunt comparații numerice (mai mici decât [și nu egale], mai mari decât [și nu egale]). Există, de asemenea, operatori mai mici / mai mari sau egali -le și -ge și operatori egali și nu egali -eq și -ne. Aceștia sunt operatori numerici, deci va exista o eroare dacă ambele părți nu sunt” un număr, și 9 este considerat au fost mai puțin de 10.
Motivele pentru care numele -lt sunt utilizate mai degrabă decât înseamnă că caracterul < ar fi interpretat ca o redirecționare. Operatorii = și != există, de asemenea, dar efectuează o comparație șir: test 00 -eq 0 este true întrucât test 00 = 0 este fals.
Unele cochilii, inclusiv bash, au și operatori < și > care efectuează o comparație lexicografică de șiruri, deci test 9 \< 10 este fals deoarece 9 este sortat înainte de 1 (bara inversă împiedică interpretarea caracterului < ca un operator de redirecționare). Aceste cochilii oferă, de asemenea, sintaxa cu paranteză dublă pentru teste, de ex. [[ 9 < 10 ]] (spre deosebire de [ 9 \< 10 ]), care nu poate avea redirecționări în interior, astfel încât < nu trebuie să fie citat.
Răspuns
Sunt doar operatori.
Pur și simplu: gt și lt mean> (mai mare decât) și < (mai puțin de).
Puteți căuta aici pentru mai multe informații despre operatori:
Răspuns
Aceștia sunt operatori de comparație
-lt = mai puțin decât
-gt = mai mare decât
Puteți verifica această pagină pentru detalii suplimentare:
echodin cod răspund la întrebarea dvs.