linux执行./(点斜杠)和. (点空格)sh命令区别

问题场景

重启tlq服务,执行./setp命令后,bin目录执行tlq提示

get env error 段错误(吐核)

问题处理

setp文件里面设置了一些目录环境参数,并且目录什么的都有,但执行脚本就是不生效。

后来同事. setp,也就是. (点空格)执行后,再执行tlq启动脚本成功了。也就是环境变量生效了。

知识扩展

1、./(点斜杠)

./(点斜杠)的意思是执行当前目录下的某可执行文件.

2、. (点空格)

. (点空格):某个脚本文件相当于利用source文件执行这个脚本

source命令用法:

source FileName

作用:在当前bash环境下读取并执行FileName中的命令。

注:该命令通常用命令“.”来替代。

如:source .bash_rc 与 . .bash_rc 是等效的。

注意:source命令与shell scripts的区别是,

source在当前bash环境下执行命令,而scripts是启动一个子shell来执行命令。这样如果把设置环境变量(或alias等等)的命令写进scripts中,就只会影响子shell,无法改变当前的BASH,所以通过文件(命令列)设置环境变量时,要用source 命令。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值