
Hola tengo esta frase y quiero saber que significa por favor.
if [[ -z "$1" ]]; then # --> this is if the value of the parameter $1 is zero
PASO=1
elif [[ "$1" -gt 1 ]] ; then # but i don't know what this flags mean? .."-gt"
LOG "[$(date +%T)] Parametros incorrectos"
exit 255
else
PASO=$1
fi
¿Que -gt
significa?
Respuesta1
-gt
significa "mayor que". Se utiliza para comparar números enteros para la desigualdad que generalmente se escribe >
en otros idiomas (en algunos shells, con la test
utilidad o inside [ ... ]
, >
compara dos cadenas para el orden lexicográfico, por lo que tiene un significado muy diferente al de -gt
).
-gt
está documentado en el manual de test
o [
, o en el manual de su shell si se trata de utilidades integradas, como
n1 -gt n2
Verdadero si el número entero
n1
es algebraicamente mayor que el número enteron2
; en caso contrario, falso.
(lo anterior está tomado deel texto estándar POSIX sobre la test
utilidad)
Fortran también utiliza esta abreviatura en su .GT.
operador relacional para números.
Los otros operadores relevantes para comparar números enteros en el shell con test
o en [ ... ]
son -ge
("mayor que o igual"), -lt
("menor que"), -le
("menor que o igual"), -eq
("igual") y -ne
(" no es igual").
Curiosamente,todode estos son los mismos en Fortran ( .GT.
, .GE.
, .LT.
, .LE.
y ) .EQ.
..NE.
Respuesta2
$ help test
test: test [expr]
Evaluate conditional expression.
...
arg1 OP arg2 Arithmetic tests. OP is one of -eq, -ne,
-lt, -le, -gt, or -ge.
Arithmetic binary operators return true if ARG1 is equal, not-equal,
less-than, less-than-or-equal, greater-than, or greater-than-or-equal
than ARG2.
Respuesta3
Puede comenzar con help test
, que mostrará la ayuda del subconjunto POSIX de la sintaxis admitida por el [[
operador.
Una documentación completa se encuentra en la CONDITIONAL EXPRESSIONS
sección de man bash
.
Específicamente:
Other operators:
...
arg1 OP arg2 Arithmetic tests. OP is one of -eq, -ne,
-lt, -le, -gt, or -ge.
Arithmetic binary operators return true if ARG1 is equal, not-equal,
less-than, less-than-or-equal, greater-than, or greater-than-or-equal
than ARG2.