如何让你的脚本可以在任意地方都可执行?
2020-05-19 16:02:45来源:博客园 阅读 ()
如何让你的脚本可以在任意地方都可执行?
大家好,我是良许。
我们知道,在 Linux 下写完一个脚本,通常情况下我们需要到脚本所在的目录,才可以执行这个脚本。但是大家有没注意到,像 ls
、cd
、pwd
这样的命令,它们的程序是位于 /bin
目录下,但是我们却可以在系统的任意位置都可以执行这些程序。
它们是怎么做到的?
那是因为这些命令对应的程序所在路径被加到了 Path
环境变量里。所以我们如果把自己的脚本路径加到了这个变量里,我们也可以实现在任意地方执行自己脚本的效果。
下面我们来介绍三种方法来达到这个目的。
方法1:将脚本所在路径添加到 .bashrc
文件里
我们知道,Bash 在运行起来之后,会先加载 .bashrc
文件。所以,我们可以把脚本路径添加到 .bashrc
文件,然后就能达到目标。
假设,我现在脚本放在 /home/alvin/scripts
目录下,脚本名称是 hello.sh
,运行的结果就是打印一句 hello world
。
然后,我们再把下面这句代码加到 .bashrc
最后:
export PATH="/home/alvin/scripts:$PATH"
最后,再使用 source
命令使我们的修改生效:
$ source ~/.bashrc
现在,我们就可以在任何地方使用我们自己的脚本啦~
方法2:将脚本所在路径添加到 .profile
文件里
.profile
文件是一个环境变量配置文件,用户在登录系统的时候加载此文件来配置环境变量。所以我们可以在这个文件里添加我们的路径,使得脚本在任意地方都可以使用。
我们可以在 .proflie
文件末尾加入下面这句代码:
export PATH="$PATH:$HOME/scripts"
然后,我们需要退出终端再重新登录使修改生效。
如果你使用 Ubuntu 及其衍生发行版,那么就需要修改 .pam_environment
文件,而不是 .profile
文件。同样地,在该文件末尾加入这么一句代码:
PATH DEFAULT=${PATH}:/home/@{PAM_USER}/scripts
最后,同样重新登录使能修改。
这时,大家就可以在任何地方都可以执行你的脚本了。
2020 精选 阿里/腾讯等一线大厂 面试、简历、进阶、电子书 公众号「良许Linux」后台回复「资料」免费获取
方法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一样,需要将用户登出再重新登录即可,然后我们的目的就可以达成了。
小结
本文介绍三种不一样的方法,使得我们自己写的脚本在任何地方都可以直接使用。方法很简单,但学会了会省不少时间!
看完的都是真爱,点个赞再走呗?您的「三连」就是良许持续创作的最大动力!
- 关注原创公众号「良许Linux」,第一时间获取最新Linux干货!
- 公众号后台回复【资料】【面试】【简历】获取精选一线大厂面试、自我提升、简历等资料。
- 关注我的博客:lxlinux.net
原文链接:https://www.cnblogs.com/yychuyu/p/12918957.html
如有疑问请与原作者联系
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点,本站所提供的摄影照片,插画,设计作品,如需使用,请与原作者联系,版权归原作者所有
下一篇:Linux命令(8)yum命令
- Linux系统如何设置开机自动运行脚本? 2020-06-11
- Linux指令和shell脚本 2020-06-11
- 信息泄漏时代,如何让自己的密码更安全? 2020-06-10
- 一个骚命令防止你的文件被误删除! 2020-06-08
- 如何监控 Linux 服务器状态? 2020-06-06
IDC资讯: 主机资讯 注册资讯 托管资讯 vps资讯 网站建设
网站运营: 建站经验 策划盈利 搜索优化 网站推广 免费资源
网络编程: Asp.Net编程 Asp编程 Php编程 Xml编程 Access Mssql Mysql 其它
服务器技术: Web服务器 Ftp服务器 Mail服务器 Dns服务器 安全防护
软件技巧: 其它软件 Word Excel Powerpoint Ghost Vista QQ空间 QQ FlashGet 迅雷
网页制作: FrontPages Dreamweaver Javascript css photoshop fireworks Flash