Acabo de notar esto en bash 4.3; el número de versión exacto es 4.3.42(1)-release (x86-redhat-linux-gnu).
$ ..
$ ...
$ ....
$ .....
¿Por qué no aparece el mensaje "comando no encontrado"?
$ ...
$ echo $?
$ 127
Revisé el $PATH
y el alias
ninguna cosa; El hombre tampoco está ayudando.
El bash se ejecuta en Fedora Linux, pero creo que no está relacionado con el sistema operativo.
EDITAR
Acabo de notar que es lo mismo para cualquier comando de inicio de punto
.za
.zaza
..za
..zaza
Respuesta aceptada:
Esto fue causado por el manejo de comandos no encontrados en Fedora.
Ejecutando un comando desconocido (incluyendo ...
etc. si ningún alias coincide) provoca command_not_found_handle
para ejecutarse con el comando faltante como parámetro (ver /etc/profile.d/PackageKit.sh
para su definición). En el escenario dado, el controlador ejecuta /usr/libexec/pk-command-not-found
, de nuevo con el comando que falta como parámetro. Anteriormente, pk-command-not-found
simplemente ignoró cualquier comando que comience con .
:
if (argv[1][0] == '.')
goto out;
y salió con el código 127.
Este comportamiento se introdujo para arreglar Red Hat #1151185, también se hace referencia en Bash no imprime ningún mensaje de error en comandos inexistentes que comienzan con punto, y tiene un error que solicita una corrección (Red Hat #1292531). Se ha solucionado en gran medida en FC 27 con actualizaciones, desde PackageKit 1.1.8 (consulte este compromiso):ahora se procesan los comandos con puntos iniciales, solo .
y ..
se ignoran.