首页   注册   登录
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  程序员

如何设置 shell 脚本的环境变量,使得任意目录都可以执行?

  •  
  •   miaoxia · 2017-09-27 15:55:55 +08:00 · 5111 次点击
    这是一个创建于 753 天前的主题,其中的信息可能已经有所发展或是发生改变。

    有很多常用的操作已经写成了 shell 脚本
    但是每次执行 都需要 cd 到 shell 脚本的目录下
    再去执行./ xxx.sh
    有没有办法设置 shell 脚本所在文件夹的环境变量
    然后可以支持在任意目录下都可以执行?
    谢谢大家

    8 回复  |  直到 2017-09-27 18:29:41 +08:00
        1
    liuxu   2017-09-27 16:01:26 +08:00   ♥ 1
    shell 脚本的目录加入到$PATH
        2
    geeglo   2017-09-27 16:01:48 +08:00 via iPhone   ♥ 1
    alias
        3
    miaoxia   2017-09-27 16:04:44 +08:00
    @liuxu 已经将 shell 目录加入.bash_profile 中
    但是如何运行呢
    还是通过 ./ xxx.sh 吗 这样应该还是会从当前的位置寻找脚本
        4
    liuxu   2017-09-27 16:12:08 +08:00   ♥ 1
    path 设置好后,直接 xxx.sh 就可以了
        5
    pcatzj   2017-09-27 16:13:41 +08:00   ♥ 1
    @miaoxia #3 “./” 代表当前路径,你这么用肯定是从当前文件夹找了,如果你环境变量配置的对的话,应该直接 xx.sh 这么调用,或者把你的脚本文件放到“/usr/bin/”路径下,也可以直接全局调用。
        6
    miaoxia   2017-09-27 16:20:28 +08:00
    @liuxu
    @pcatzj
    非常感谢 🙏🙏
    确实是有效的 提高了很多工作效率~
    可惜木有补全:)
        7
    miaoxia   2017-09-27 16:20:57 +08:00
    @geeglo
    谢谢 提供了好赞的思路~
        8
    FPGA   2017-09-27 18:29:41 +08:00
    感觉把脚本写成函数更好,写进 .bashrc,登入 shell 自动生效,无需另外增加脚本文件或者改动环境变量
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   4084 人在线   最高记录 5043   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.3 · 25ms · UTC 07:09 · PVG 15:09 · LAX 00:09 · JFK 03:09
    ♥ Do have faith in what you're doing.