首先要保证你安装的是正确的,接着保证你的这个可执行文件有当前登录账号的执行权限,可以用ls -al查看一下
如果,你可以使用如下方式执行:
1、./tlesp (如果后面又参数,你可以根据需要添加参数)
2、/home/path/tlsap (如果后面又参数,你可以根据需要添加参数)
我们在Linux下运行程序的时候,一般都是这样的 *** 作的,例如启动Tomcat:
[root@hostname bin]# ./catalina.sh run
我一直不理解这个“./”到底是什么意思,其实很好理解。
1.首先,我们看一下Windows在命令行里是怎么运行可执行程序的:
当前目录在D盘时,我运行C盘下的微信,需要指定完整的路径;当前目录就在微信的安装目录下时,我运行微信,直接指定exe可执行文件名就可以了。
搞懂了Windows怎么运行程序,Linux也是一样,说白了,都是直接敲文件名就能执行。
2.那Linux中的“.”到底是啥意思?为啥一定要敲一个“./”呢?
.和./就是表示当前目录。同Windows一样,Linux也是当前目录下没有可执行文件时,需要指定完整的路径;当前目录下有可执行文件时,直接指定可执行文件名就可以了。只不过Linux有点呆呆的,执行当前目录下的可执行文件时,必须要额外多敲一个"./",否则的话它自己不知道在当前目录下找这个可执行文件。
不加这个“./”,Linux就会从环境变量PATH中定义的路径中找可执行文件,只有加了这个“./”之后,Linux才会从当前目录中找可执行文件。
外延1:Windows和Linux中的command not found道理也是一样的,都是给定的路径不正确,导致找不到可运行文件。
Windows中直接运行微信如图:
Linux中直接运行Tomcat如图:
外延2:Windows中的PATH这个环境变量和Linux中的PATH作用是一样的
Windows中能直接运行记事本,就是因为环境变量PATH里设置了C:\Windows\System32这个路径
当把PATH里中的C:\Windows\System32这个路径去掉之后,就无法直接在命令行中运行记事本了。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)