自定變數與環境變數 - Linux

Tracy avatar
By Tracy
at 2013-12-22T20:40

Table of Contents

我的理解是這樣:
shell的指令有些會fork出子進程來實行 有些就在本shell實行

會fork的:
- 外部程式
- 用&實行的shell指令
不會fork的:
- "正常的" shell指令

我把你寫的兩行叫做例1. 例1是不會fork的一型
對於會fork的那些, 才有環境變數有沒有經過export的區別
例2: 子進程可以看到經export的變數
$ export a=1
$ bash -c 'echo $a'
=> 1

例3: 子進程看不到未經export的變數
$ b=1
$ bash -c 'echo $b'
=> (空白)

※ 引述《gn00618777 (非常念舊)》之銘言:
: Linux之神的鳥哥,在基本第十一章介紹自定變數與環境變數的差別是一個不能
: 給子程式使用,另一個可以,而且他說明"在一個Bash底下的任何指令"都是新
: 的子程式",照他這麼說我感覺怪怪的。
: your_path=~/test //自定變數路徑
: cd ${your_path} //可以切換目錄到test
: 既然第二個指令是子程式(新的shell),那他應該看不到這your_path變數阿
: 第一行的指令應該要export your_path=~/test變成環境變數才對阿!?可是上面
: 指令卻行得通...為何?是我理解錯誤?這也與我前幾小時問的makefile問題相關..
: 謝謝前輩。

--
祖祖 拎北不做人啦!

--
Tags: Linux

All Comments

關於makefile..

Lydia avatar
By Lydia
at 2013-12-22T10:27
我是職場菜鳥,linux新手,我想問假設我用Bernie帳號登入系統,那現在的位置 就是在我的家目錄底下,然後我編輯一個makefile內容如下: Setting: export YOUR_PATH=~/test cd ${YOUR_PATH} 結束 makefile編輯 ...

製作開機光碟

Emma avatar
By Emma
at 2013-12-21T18:38
請問各位大大 我想用 ubontu 燒一片 win7 的安裝光碟 請問有沒有 tool 可用? 我不得其門而入阿 -- 我用名為真心的卡牌說服你 這是我最後一張牌 - ...

非 root 可以改解析度嗎 ?

Hardy avatar
By Hardy
at 2013-12-21T14:40
各位板友好: 最近常在工作站跑模擬 工作站最近換了螢幕 23and#34; 1920*1080 但是電腦設定還是以前的 1024*768 看起來非常醜 而且也不夠用 所以想改正常一點 但是沒有 root 權限 Xorg.conf 設定動不了 請問這樣還有解嗎 ? 版本是 Cent ...

Ubuntu編譯核心後無法開機

Adele avatar
By Adele
at 2013-12-20T15:43
之前編譯核心都沒開機成功過,這次因為工作需要又來嘗試 (參考網頁 http://www.douban.com/group/topic/37180249/ ) 結果又失敗了 以前失敗都是開機時選原本的kernel開機就可以恢復了,但是這次是用我的筆電 (Dell inspiron 14z),它在開機時會進入一 ...

VMware無法重新啟動或關機

Oscar avatar
By Oscar
at 2013-12-20T01:31
但其實主要是想請教大家關於VM的問題(若不適在此發問,請大家多多包涵) 之前在使用結束後,並沒有將vm關機,而只是處於suspend狀態 但由於記憶體不足,原本suspend的vm無法開機,但真正困擾的是 這時的vm也不能重開機或關機,而是持續處在suspend狀態 這麼一來,就無法重新校正記憶體容量 ...