¿Qué es este archivo: / usr / bin / [?

6

El nombre del archivo es '['. Cuando lo abro en vi parece que es una copia de 'prueba'. Es propiedad de root.

Josh
fuente
¿Cuál es el resultado de stat /bin/[?
SirCharlo
@SirCharlo Archivo: `/ usr / bin / ['Tamaño: 30244 Bloques: 64 IO Block: 4096 archivo regular Dispositivo: 805h / 2053d Inode: 2499684 Enlaces: 1 Acceso: (0755 / -rwxr-xr-x) Uid: ( 0 / root) Gid: (0 / root) Acceso: 2012-08-23 14: 50: 24.545242581 -0400 Modificar: 2011-02-23 08: 22: 21.000000000 -0500 Cambio: 2012-07-09 22:31: 52.133720601 -0400
Josh el

Respuestas:

8

Se supone que ese archivo está allí (o debajo /usr/bin/[). Le permite escribir, por ejemplo [ -f $HOME/.bashrc ] && echo ".bashrc exists", que es equivalente a test -f $HOME/.bashrc && echo ".bashrc exists".

La realidad es un poco más complicado, ya que anula la fiesta /usr/bin/[con su propia [, por lo que puede utilizar el [ejecutable al proporcionar una ruta completa, /usr/bin/[ -f $HOME/.bashrc ] && echo ".bashrc exists".

pablomme
fuente
Tengo curiosidad ahora. No tengo ese archivo ..
SirCharlo
1
Tratar /usr/bin/[.
pablomme
@pablomme Eres el hombre !
SirCharlo el
5

Es una versión de testeso requiere un ]último argumento. A menudo se usa en scripts de shell, como en

if [ -e some_file ]; then ...

(pero en el shell más moderno, como Bash, es un comando incorporado).

Es requerido por POSIX

Florian Diesch
fuente