1.export修飾的變量
export修飾的變量是可以被其他進程訪問該變量的。例如
/root/a.sh
#!/bin/bash
a=11111111111
echo "this is a.sh------"$a
sh /root/b.sh
/root/b.sh
#!/bin/bash
echo "this is b.sh----------"$a
實際結果輸出是
this is a.sh------11111111111
this is b.sh----------
當給a變量加上export後,b.sh就能打印出a變量。通過sh調用的b.sh腳本和a.sh腳本不是在同一個進程裏面運行。
2.source調用其他腳本
將a.sh更改下
#!/bin/bash
a=11111111111
echo "this is a.sh------"$a
source /root/b.sh
這次變量a沒有加export,b.sh中也能打印出變量a的值。這是因爲source調用的sh腳本是使調用的b.sh直接在a.sh進程運行。
3.通過.調用其他腳本
例如:
#!/bin/bash
a=11111111111
echo "this is a.sh------"$a
. /root/b.sh
通過.調用b.sh腳本,作用和使用source調用相同