Why is it that some bash programs will only run on my system when I type ./
before their name?
An example: In my [...]/android/sdk
folders I have to execute adb
like this:
./adb devices
Why not just adb devices
?
Why is it that some bash programs will only run on my system when I type ./
before their name?
An example: In my [...]/android/sdk
folders I have to execute adb
like this:
./adb devices
Why not just adb devices
?
If you run
echo $PATH
you will see a list of directories that your system will search for commands to run.
If you want to run commands in your current working directory, then you can run:
PATH=$PATH:.;export PATH
You can add this line to your ~/.bash_profile
to have this behaviour persistent across sessions.
.
is the symbol for your current directory. You have to include the /
so it knows that it's not a .
at the beginning of the file. If you navigate to a different directory and type the directory of the file, you don't have to have the ./