linux怎么把目录改为bin,linux – 更改一个特定程序的默认目录而不更改其路径...

我有两个g程序位于/usr/local/bin /和/usr/bin /

我想将默认g放在/usr/local/bin /中.但是,我不想更改我的PATH环境变量,因为对于其他一些程序.我更喜欢/usr/bin /中的版本而不是/usr/local/bin /中的版本.这可能吗?

说清楚我的观点:

我希望我的两个程序的默认值为:

g在/usr/local/bin /

/usr/bin /中的python

但是在/usr/local/bin /和/usr/bin /中,两个程序都存在,我该怎么办?

解决方法:

选项1:在路径上创建覆盖文件夹

如果您需要以间接方式调用这些程序(例如,由窗口管理器启动的某些应用程序将调用g或python),您应该编辑路径.您只需在〜/ .bashrc中的路径开头添加一个新文件夹即可:

export PATH=/home/username/.bin:$PATH

并放置两个符号链接指向适当的程序:

ln -s /usr/bin/python /home/username/.bin/python

ln -s /usr/local/bin/g++ /home/username/.bin/g++

这样,一旦你的〜/ .bashrc被正确采购(注销,然后重新登录),一切都应该找到正确的python和正确的g.

选项2:使用bash的别名来跟随

如果你正在寻找一个更轻量级的解决方案,如果你只是直接从bash调用python,你可以在你的〜/ .bashrc中设置一个别名:

alias python=/usr/bin/python

选项3:只需在/usr/local/bin /中更改python的名称

或者你总是可以将/usr/local/bin / python重命名为/usr/local/bin / python-alternate或者其他东西.我不建议在/usr/bin中重命名,因为至少在由包管理器控制的Debian中.通常/usr/local/bin不是.

选项4:在Makefile中指定正确的编译器

如果您的工作流使用make或一些调用make的更广泛的应用程序(例如autotools或cmake),则几乎总有一个选项来指定编译器.例如,您的makefile可能如下所示:

CXX=/usr/local/bin/g++

all:

$(CXX) inputfile.cpp -o outputfile

或者使用cmake配置

cmake -D CMAKE_CXX_COMPILER=/usr/local/bin/g++ ..

不同的程序将使用不同的语法来指定编译器,但您总是可以指定它.

标签:linux,path

来源: https://codeday.me/bug/20190814/1652288.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值