-
一定要写成 ./test.sh,而不是 test.sh
-
运行其它二进制的程序也一样!
-
直接写 test.sh,linux 系统会去 PATH (系统环境)里寻找有没有叫 test.sh 的!
-
而只有 /bin, /sbin, /usr/bin,/usr/sbin 这些路径是写在了PATH 里!
-
你的当前目录通常不在 PATH 里,所以写成 test.sh 是会找不到命令的,执行 ./test.sh 就是告诉系统说,就在当前目录找test.sh然后执行它!
你可以用这条命令查看一下你系统的PATH都有哪些
echo $PATH
或者打开/etc/profile
这个文件也可以看到