linux c语言运行的时候,怎么样可以做到不加 .

linux c语言运行的时候,怎么样可以做到不加 .,第1张

一、在自己的目录下创建一个bin文件毕历夹

mkdir /home/用户名/bin

二、修改环境变量

echo PATH=$PATH:$HOME/bin >>.bash_profile

echo export PATH >>.bash_profile

三、在刚创建的bin目录下编写脚本或可执行手穗搜文件

注意:如果是自己编写的脚本注意添加执行权限

chmod u+x 脚本名

综上族启,就可以不加 ./ 在自己的主目录下直接运行脚本

点号郑弯磨表示当前目闹宽录,所以./ping就表示在当前目录下的ping.如果想不加喊斗./执行的话,你只要把点号加到环境变量PATH中即可。

在.profile(或者/etc/profile)中加入:

PATH=$PATH:.

这是因为当前目录不再PATH中。

所以执行该程序必唯轮须加上路径(绝对路径活相对路径)。

“.”在Linux(以及许多其他系统中)指的是当前目录(就是你执行pwd所看到的目录)。因此“./foo”指的是运行当前目录下的foo程序。

如果需要不加“./”,有如下解决方法:

1)把这个程序复制到PATH中有的目录中去。

(查看PATH中有哪些目录用“echo $PATH”)

2)把路径“.”加入到PATH中去:

执行

export PATH=$PATH:.

如果希望不用每次启动新BASH的时候都设置这个环境变量,请在~/.bash_profile(在不同的系统中可能并不一样,在Ubuntu中默认是~/.profile)中找到PATH变量并添加“.”路径。

注意:这样如果系统PATH中有与你的盯山肢程序的同名文件,那么执行的将不是你的程序。当然,把上面那个命令改成

export PATH=.:$PATH可以解决这个问题,但这凯世是很危险的(加入有人在某个目录下把一个木马起名ls,那么你在这个目录下运行ls就会......)。

总的来说,建议习惯使用“./”来执行当前目录的程序。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/12566148.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-26
下一篇 2023-05-26

发表评论

登录后才能评论

评论列表(0条)

保存