我找劇本與詹金斯運行Appium時讀一些下面的腳本#!/斌/慶典--login VS#!/斌/慶典
#!/bin/bash --login
killall -9 "iPhone Simulator" &> /dev/null
killall -9 node &> /dev/null
killall -9 instruments &> /dev/null
...
我不明白爲什麼的第一行腳本需要在這裏通過--login
選項。我已閱讀手冊頁,但仍有一些混淆。
我從手冊頁得到的是通過--login
使腳本被調用爲login shell
而不是interactive
shell。 interactive
shell是用戶可以與shell進行交互的shell,就像使用鍵盤輸入內容一樣。但是什麼是login shell
?我查看了手冊頁,它說login shell
會加載~/.bash_profile
,但是如果通過Mac OSX的Terminal.app打開終端,它也會加載~/.bash_profile
,我可以與shell進行交互,對吧?那麼,我打開的外殼是login shell
和interactive shell
?
是的,一個shell既可以是「登錄」也可以是「交互式」shell。不,事實上'.bash_profile'被讀取並不一定意味着這一點。大多數人不明白shell init的工作方式,所以從一組init文件到另一個init文件的鏈接都是這樣,所以不管是什麼類型的shell都加載了這些東西(這是許多發行版的默認配置,甚至是)。 – 2014-09-05 02:28:49
我會向供應商提出支持問題。我看不出用這個腳本做這件事的好理由。任何需要的東西都應該導出或專門設置。依賴用戶在第三方產品中的啓動文件需要麻煩,並且是不必要的開銷。我懷疑這是無意的。 – cdarke 2014-09-05 05:58:30