作者 主題: shell脚本中的PATH问题  (閱讀 578 次)

0 會員 與 1 訪客 正在閱讀本文。

windman

  • 可愛的小學生
  • *
  • 文章數: 2
    • 檢視個人資料
shell脚本中的PATH问题
« 於: 2019-04-24 22:44 »
看鸟哥Linux私房菜的shell script中编写的第一个脚本时,有一个地方搞不懂,想问一下
在这个脚本中为什么要声明PATH变量,以及export PATH???
在学习bash章节时,书上说PATH是环境变量,环境变量可以被子进程引用。
如果在bash下执行脚本(bash算作父进程,脚本算子进程的话),
那么根据 环境变量会被子进程引用,那脚本程序这个子进程会引用父进程的PATH这个环境变量,
那为什么还要再次在脚本中声名PATH呢?
还有就是脚本中export PATH有是起了什么样的作用呢?

netman

  • 管理員
  • 俺是博士!
  • *****
  • 文章數: 17434
    • 檢視個人資料
    • http://www.study-area.org
Re: shell脚本中的PATH问题
« 回覆 #1 於: 2019-04-29 20:09 »
環境變量的問題,也建議您先搜尋一下“shell 十三問”,看完會比較有概念。
簡單來說,shell script 自己定義 PATH 的原因一般有兩個:
1. 不想繼承當前 shell 的 PATH
2. 確保 script 所用的 PATH 有被定義到

windman

  • 可愛的小學生
  • *
  • 文章數: 2
    • 檢視個人資料
Re: shell脚本中的PATH问题
« 回覆 #2 於: 2019-04-29 20:28 »
感谢回复。我也问了下别人,得到回答是:脚本可能会被不同用户执行,不同用户有不同的PATH,所以要在脚本中定义PATH。
你的回答更有概括性一些。