首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在CentOS中添加/修改PATH变量?

如何在CentOS中添加/修改PATH变量?
EN

Stack Overflow用户
提问于 2019-06-12 18:38:29
回答 1查看 2.2K关注 0票数 3

我正在尝试将/usr/pgsql-10/bin添加到$PATH中,因为我希望使用该计算机的每个人都能够运行psql命令。

已尝试遵循this示例:

代码语言:javascript
复制
- name: add {{extra_path}} to path
  lineinfile:
    dest: /etc/environment
    state: present
    backrefs: yes
    regexp: 'PATH=(["]*)((?!.*?{{extra_path}}).*?)(["]*)$'
    line: "PATH=\1\2:{{extra_path}}\3"

首先,我不太明白我到底应该如何修改它。我应该用我的路径(/usr/pgsql-10/bin)只替换extra_path还是整个{{extra_path}}

我尝试了任何一种方法,都得到了不同的错误。更糟糕的是,我的/etc/environment甚至没有包含PATH

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-06-12 19:48:02

仅声明附加路径

代码语言:javascript
复制
  vars:
    extra_path: /usr/pgsql-10/bin

基于Response to updating PATH with ansible - system wide的想法,下面的任务似乎是可行的

代码语言:javascript
复制
    - name: 'Add {{ extra_path }} if PATH does not exist'
      lineinfile:
        path: /etc/environment
        line: 'PATH="{{ extra_path }}"'
        insertafter: EOF
      when: lookup('file', '/etc/environment') is not search('^\s*PATH\s*=')

    - name: 'Add {{ extra_path }} to PATH'
      lineinfile:
        path: /etc/environment
        regexp: 'PATH=(["])((?!.*?{{ extra_path }}).*?)(["])$'
        line: 'PATH=\1\2:{{ extra_path }}\3'
        backrefs: yes
      when: lookup('file', '/etc/environment') is search('^\s*PATH\s*=')

(这是一个相当不错的reading。)

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/56560173

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档