Comment by mjw1007
It makes tab completion work.
It makes tab completion work.
Let's say you have 100 programs in your PATH that start with the letter "g", but only one program in the current folder that starts with "g". You type `./g[TAB]` so it autocompletes automatically to the local program instead of cycling through dozens of results you know you don't want.
At the start of a line? So you want to run a script or executable in the current directory. PATH doesn’t contain . and ./ is necessary.
As an argument in a line? My shell offers completion from the current directory without ./ just fine.