linux下执行应用程序

我在linux下执行自己编写的应用程序,进入到应用程序所在目录,
系统却提示command not found。输入完整的路径可以成功执行。为什么?
难道系统不搜索当前目录吗?
---------------------------------------------------------------

./appname
---------------------------------------------------------------

或者在profile文件里修改PATH环境变量,把当前目录(.)加入
---------------------------------------------------------------

问题答案:环境变量里面没有加入当前路径。
解决方案:添加当前路径.到变量PATH总去。

关于安全性的问题,是基于其他有害程序的考虑,一般而言大可不必上心的。
因为可能有其他一些不怀好意的用户编写一些对系统有害的程序,编译后放在你的路径里面,或更改名称为诸如cd.之类的可执行文件。如果你恰好在放置有该类程序的目录下,误操作一下cd.便会执行该程序。
你能够知道自己犯了错误了吗?
可能该程序的输出就是:cd.: not found. ,但是它却在后台做了大量的工作,比如说:(1)添加一些信息到文件/etc/passwd里面去,这样可以会造就一个新的root用户;(2)修改文件/etc/passwd,一个可能就是清空该文件的信息。

有些寒了吧,呵呵...

Published At
Categories with 服务器类
Tagged with
comments powered by Disqus