關於makefile.. - Linux

Table of Contents

我是職場菜鳥,linux新手,我想問假設我用Bernie帳號登入系統,那現在的位置

就是在我的家目錄底下,然後我編輯一個makefile內容如下:

Setting:
export YOUR_PATH=~/test
cd ${YOUR_PATH}

結束 makefile編輯回到命令列並打上 [Bernie@localhost ~]$ make Setting

為啥[Bernie@localhost ~]不能變成[Bernie@localhost test]?????

那我該怎麼做才能達成這目的呢?感謝各位前輩。

--

All Comments

Edith avatarEdith2013-12-22
把 ~ 換成 $(HOME) 試試看
Callum avatarCallum2013-12-24
把makefile的內容的~換掉嗎? 執行出來結果一樣~"~
Damian avatarDamian2013-12-25
Makefile 裡面每一行指令都會在新的 shell 裡執行
Connor avatarConnor2013-12-30
可以考慮改寫成 shell script 然後 source 進來
Barb Cronin avatarBarb Cronin2014-01-01
樓上正解
Freda avatarFreda2014-01-05
您說每一行指令在新的shell執行,意思是我的makefile裡
Ivy avatarIvy2014-01-09
目前有兩個shell+還為執行makefile的shell,共三個?
Candice avatarCandice2014-01-09
make 啟動的 shell 只執行一行就結束了
Poppy avatarPoppy2014-01-12
但是 export 和 cd 的目的都是要改現在的 shell 環境
Enid avatarEnid2014-01-15
讓 make 啟動新的 shell 去執行這些東西是沒有效果的
Andrew avatarAndrew2014-01-18
$()這括號裡面放的是指令 不要跟變數的樣式搞錯了
Yedda avatarYedda2014-01-22
make是在子進程實行 不影響shell的當前目錄
Irma avatarIrma2014-01-26
恩 謝謝各位
Zora avatarZora2014-01-30
$() 在 shell script 裡面是執行指令
Kama avatarKama2014-02-03
但是 $() 在 Makefile 裡面是變數,${} 後來加上去的