He creado un programa C simple así:
int main(int argc, char *argv[]) {
if (argc != 5) {
fputs("Not enough arguments!\n", stderr);
exit(EXIT_FAILURE);
}
Y tengo mi RUTA modificada en etc / bash.bashrc así:
PATH=.:$PATH
He guardado este programa como set.c y lo estoy compilando con
gcc -o set set.c
en la carpeta
~/Programming/so
Sin embargo, cuando llamo
set 2 3
no pasa nada. No hay texto que aparezca.
Vocación
./set 2 3
da el resultado esperado
Nunca he tenido un problema con PATH antes y
which set
vuelve ./set
. Entonces parece que la RUTA es la correcta. ¿Qué está pasando?
test
básicamente por la misma razón; test
También es un shell incorporado.
test
parece tener sentido. Por supuesto, para cuando lo coloques en tu PATH
realmente deberías haber encontrado un nombre diferente. Y hasta que ponga el programa en su PATH
cuenta, deberá invocarlo como de ./test
todos modos. Por lo tanto, está bien usar el nombre test
de un programa siempre que sea una prueba rápida que intente eliminar antes de que finalice el día.
foo
.
ls
cada vez que vaya a ver si existe, se ejecutará (pero solo si modifica su ruta como lo hizo en la pregunta).