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?
testbásicamente por la misma razón; testTambién es un shell incorporado.
testparece tener sentido. Por supuesto, para cuando lo coloques en tu PATHrealmente deberías haber encontrado un nombre diferente. Y hasta que ponga el programa en su PATHcuenta, deberá invocarlo como de ./testtodos modos. Por lo tanto, está bien usar el nombre testde un programa siempre que sea una prueba rápida que intente eliminar antes de que finalice el día.
foo.
lscada vez que vaya a ver si existe, se ejecutará (pero solo si modifica su ruta como lo hizo en la pregunta).