
He visto tanto en Cygwin como en Linux el [
comando bajo /bin
. Cada vez que lo ejecuto me sale un error que dice: missing ]
.
Nunca entendí qué hace este comando, solo un día descubrí que quería saber qué hace (y si es útil o no).
NOTA:Habría revisado la man
entrada para obtener una respuesta, pero lamentablemente no hay ninguna entrada para[
Respuesta1
Esto estest
dominio.
Por ejemplo, averigüe si /etc/passwd
existe o no:
[ -f /etc/passwd ] && echo "Yes" || echo "No"
Regularmente lo escribes de la siguiente manera:
if test -f /etc/passwd
then
echo "Yes"
else
echo "No"
fi
Read
Respuesta2
¿Alguna vez has visto o notado las condiciones en los scripts de Shell? Son de la forma:
[ -e $FILE ]
En esos casos, la funcionalidad de verificación de condiciones generalmente está integrada en el shell que interpreta esos scripts, generalmente bash o sh-aliased-bash.
Los binarios que ve tienen el mismo propósito, pero están presentes para que las comprobaciones de condición se puedan usar en shellssindicha funcionalidad incorporada.
Respuesta3
El corchete [ es otra forma de llamar al test
comando.
Referirse apágina de manual de la pruebapara más información :)