linux登陸主機後,在執行script之前,其實我們已經處於乙個shell中,即login shell ,它是將來要執行script的父shell,如root賬號預設為/bin/bash
linux下每個賬號都可以自定義login shell,在/etc/passwd檔案中,login shell定義在第七個字段,如果這個欄位不存在,不合法或執行失敗,則無法登陸主機
當在執行乙個shell script時,父shell會根據script程式的第一行的 #: 之後指定的shell程雪 來開啟乙個子shell壞境,然後再子shell中執行此shell script,一旦執行完畢,子shell結束,回到父shell,不會影響原文父shell的環境。
執行指令碼的三種方式:
1.source test.sh 或者 . test.sh
在當前shell環境下讀取並執行script中命令,該script可以沒有許可權,沒有建立子shell,script裡所有新建壞境變數都儲存在當前shell裡
2.sh test.sh 或者bash test.sh
在父shell下建立乙個子shell,在子shell中執行指令碼裡面的語句,該子shell繼承父shell的環境變數,但子shell新建的壞境變數不會帶回父shell,除非使用export,可以無執行許可權
3. chmod +x test.sh && ./test.sh
開啟乙個子shell來執行test.sh指令碼
1.登陸主機後,開啟乙個終端,輸入echo $shlvl,輸出2.
2.輸入bash,進入乙個子shell,然後再輸入echo $shlvl,輸出3.
3.輸入exit,然後再輸入echo $shlvl ,輸出2.
4.輸入exit,退出終端。
Linux學習筆記 shell及shell命令
一 基本命令語法 1.快捷鍵 2.同行多命令的排列 3.設定別名 alias 別名 需要定義別名的命令 如 alias ll ls al 注意 4.輸出重定向 如 ls my.txt 瀏覽當前目錄的資訊,但是結果不再輸出到終端顯示,而是儲存到了my.txt檔案中 和 的區別 會覆蓋檔案原內容,則是在...
shell介紹及簡單編輯shell
一.什麼是shell及作用 shell字面理解就是個 殼 是作業系統 核心 與使用者之間的橋梁,充當命令直譯器的作用,將使用者輸入的命令翻譯給系統執行。linux中的shell與windows下的dos一樣,提供一些內建命令 shell命令 供使用者使用,可以用這些命令編寫shell指令碼來完成複雜...
Linux 常用shell簡介及shell基本操作
1.查詢shell環境變數,切換shell種類 表明目前使用的shell種類是bash。要想改變shell種類,在終端輸入想要執行的shell名稱即可。在切換shell種類的過程中,可能會操作失敗,這是因為ubuntu沒有自帶安裝想要切換的shell種類。2.shell命令的基本格式 shell的命...