Shell環境變數設定

2021-09-01 20:36:29 字數 1000 閱讀 2010

關於shell指令碼變數傳遞

1本地變數無法傳遞到子程序

2環境變數對所有的子程序都有效

3無論本地變數還是環境變數都無法向父程序傳遞引數

論壇上的一位達人給了個非常經典的例子,記在這裡:

hadoop3@linux-240:~> cat father.sh 

#!/bin/bash

# echo father pid

echo "father process id is $$"

# define local env

localvar="define a local variable."

echo "localvar=$localvar"

envvar="define a environment variable."

export envvar

echo "envvar=$envvar"

$pwd/child.sh

echo "retrun to father process: $$"

echo "localvar=$localvar"

echo "envvar=$envvar"

hadoop3@linux-240:~> cat child.sh

#!/bin/bash

echo "child process id is $$"

echo "my father process id is $ppid"

echo "localvar=$localvar"

echo "envvar=$envvar"

localvar="redefine this local variable."

envvar="redefine this environment variable."

echo "localvar=$localvar"

echo "envvar=$envvar"

hadoop3@linux-240:~>

shell環境變數

環境變數 和 自定義變數 子程序僅會繼承父程序的環境變數,而不會繼承父程序的自定義變數,所以,你原本bash中的自定義變數在進入了子程序後就會消失不見,一直到你離開子程序並回到原本的父程序之後,這個變數才會出現。1.用env檢視預設的環境變數及其說明 export也可檢視,但是輸出的內容比env多 ...

shell環境變數

1.環境變數的定義 環境變數一般是指在作業系統中用來指定作業系統執行環境的一些引數,如path,pwd,user,當前使用的shell名稱。系統啟動後,會產生許多環境變數,使用者可以用set命令檢視 shell例項1 root changerlee 環境變數的定義 set abrt debug lo...

shell 環境變數

環境變數 檢視所有環境變數 oldbing 愛生活 愛冰冰 oldbing 愛生活 愛冰冰 echo oldbing cdecho path hostname whoami echo path hostname whoami echo path hostname whoami echo path h...