如何让脚本在任意地方可执行

大家好,我是咔咔 不期速成,日拱一卒

在上一期文章《闯祸了,生成环境执行了DDL操作》中,为了防止在线DDL造成的SQL阻塞使用了第三方插件pt-online-schema-change

在使用这个插件修改表数据时需要加入很多参数,例如数据库名、表名、数据库地址、数据库密码等参数。

然后将插件需要执行一系列参数优化为一个脚本,那么问题来了,如何让这个脚本在任意地方都可以执行呢?

在上期文章咔咔把执行的脚本放置到了如下位置,接下来看看都有哪些方法可以让这个脚本可以在任意地方都可以执行。

如何让脚本在任意地方可执行_第1张图片

一、将脚本路径添加到.bashrc文件中

bash运行起来首先后加载.bahsrc文件,so可以直接把需要执行的脚本路径添加到此文件中

那你得知道.bashrc文件在哪吧!位置就在当前用户的根目录,执行cd ~后即可看到此文件

如何让脚本在任意地方可执行_第2张图片

接着在这个文件中把你的脚本路径放进去即可,添加最后一行代码export PATH="/script:$PATH"

如何让脚本在任意地方可执行_第3张图片

最后,再使用source命令使我们的修改生效

source ~/.bashrc

来试试直接在根目录执行给evt_sms表添加一个bash字段,看到下图就知道我们的配置成功了

如何让脚本在任意地方可执行_第4张图片

二、将脚本路径添加到.profile文件中

文件路径在etc/profile

在文件末尾加上export PATH="$PATH:$HOME/script"即可

这种方式需要退出终端才会生效

如何让脚本在任意地方可执行_第5张图片

三、使用软链的方式

把写好的脚本复制到/usr/local/bin下

添加一个软连接即可ln -s /usr/local/bin/pt.sh /usr/bin/pt.sh

然后就可以在任意地方执行pt.sh这个脚本了

四、总结

本文简单的跟大家聊了两种让你的脚本在任何地方都可以执行,会使用其中一种就行了。

但实现的方式都要有了解,因为每个人喜欢处理的方式不一致,当你遇到这种脚本时你要知道他是在哪里配置的,然后你才可以修改它

五、推荐阅读

打开order by的大门,一探究竟《死磕MySQL系列 十二》

重重封锁,让你一条数据都拿不到《死磕MySQL系列 十三》

闯祸了,生成环境执行了DDL操作《死磕MySQL系列 十四》

聊聊MySQL的加锁规则《死磕MySQL系列 十五》

坚持学习、坚持写作、坚持分享是咔咔从业以来所秉持的信念。愿文章在偌大的互联网上能给你带来一点帮助,我是咔咔,下期见。

你可能感兴趣的:(linux)