你的浏览器版本过低,可能导致网站不能正常访问!
为了你能正常使用网站功能,请使用这些浏览器。

介绍三种任意位置执行脚本方法

[复制链接]
gaosmile 发布时间:2020-5-19 14:21
我们知道,在 Linux 下写完一个脚本,通常情况下我们需要到脚本所在的目录,才可以执行这个脚本。但是大家有没注意到,像 ls 、cd 、pwd 这样的命令,它们的程序是位于 /bin 目录下,但是我们却可以在系统的任意位置都可以执行这些程序。

它们是怎么做到的?

那是因为这些命令对应的程序所在路径被加到了 Path 环境变量里。所以我们如果把自己的脚本路径加到了这个变量里,我们也可以实现在任意地方执行自己脚本的效果。

下面我们来介绍三种方法来达到这个目的。

  方法1:将脚本所在路径添加到 `.bashrc` 文件里  

我们知道,Bash 在运行起来之后,会先加载 .bashrc 文件。所以,我们可以把脚本路径添加到.bashrc 文件,然后就能达到目标。

假设,我现在脚本放在 /home/alvin/scripts 目录下,脚本名称是 hello.sh ,运行的结果就是打印一句 hello world 。

微信图片_20200519141922.jpg

然后,我们再把下面这句代码加到 .bashrc 最后:
export PATH="/home/alvin/scriptsPATH"


微信图片_20200519141925.jpg

最后,再使用 source 命令使我们的修改生效:
$ source ~/.bashrc

现在,我们就可以在任何地方使用我们自己的脚本啦~

微信图片_20200519141928.jpg

  方法2:将脚本所在路径添加到 `.profile` 文件里  

.profile 文件是一个环境变量配置文件,用户在登录系统的时候加载此文件来配置环境变量。所以我们可以在这个文件里添加我们的路径,使得脚本在任意地方都可以使用。

我们可以在 .proflie 文件末尾加入下面这句代码:
export PATH="$PATHHOME/scripts"

然后,我们需要退出终端再重新登录使修改生效。

如果你使用 Ubuntu 及其衍生发行版,那么就需要修改 .pam_environment 文件,而不是 .profile文件。同样地,在该文件末尾加入这么一句代码:
PATH DEFAULT=${PATH}:/home/@{PAM_USER}/scripts

最后,同样重新登录使能修改。

这时,大家就可以在任何地方都可以执行你的脚本了。

  方法3:将脚本所在路径添加到环境变量里  

这个方法大家应该都能想到,最简单粗暴,直接改环境变量文件。该文件一般位于 /etc 目录下,文件名是 environment 。
sudo vim /etc/environment

我们找到文件里的这么一句配置:
PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin"

我们只要在这句话后面再加上我们的脚本路径即可。

PATH="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/usr/games:/usr/local/games:/home/alvin/scripts"

跟方法2一样,需要将用户登出再重新登录即可,然后我们的目的就可以达成了。

  小结  

本文介绍三种不一样的方法,使得我们自己写的脚本在任何地方都可以直接使用。方法很简单,但学会了会省不少时间!
收藏 1 评论0 发布时间:2020-5-19 14:21

举报

0个回答

所属标签

STM32团队

意法半导体微控制器和微处理器拥有广泛的产品线,包含低成本的8位单片机和基于ARM® Cortex®-M0、M0+、M3、M4、M33、M7及A7内核并具备丰富外设选择的32位微控制器及微处理器


最新内容

关于
我们是谁
投资者关系
意法半导体可持续发展举措
创新与技术
意法半导体官网
联系我们
联系ST分支机构
寻找销售人员和分销渠道
社区
媒体中心
活动与培训
隐私策略
隐私策略
Cookies管理
行使您的权利
官方最新发布
STM32N6 AI生态系统
STM32MCU,MPU高性能GUI
ST ACEPACK电源模块
意法半导体生物传感器
STM32Cube扩展软件包
关注我们
微信公众号二维码 微信公众号
手机版二维码 手机版