日日操夜夜添-日日操影院-日日草夜夜操-日日干干-精品一区二区三区波多野结衣-精品一区二区三区高清免费不卡

公告:魔扣目錄網為廣大站長提供免費收錄網站服務,提交前請做好本站友鏈:【 網站目錄:http://www.ylptlb.cn 】, 免友鏈快審服務(50元/站),

點擊這里在線咨詢客服
新站提交
  • 網站:51998
  • 待審:31
  • 小程序:12
  • 文章:1030137
  • 會員:747

在調試基于 Debian 的 Docker 鏡像時,進入容器后在終端中按上箭頭鍵后終端顯示^[[A,下箭頭顯示^[[B,右箭頭顯示^[[C,左箭頭顯示^[[D,按刪除鍵也是顯示了幾個特殊字符。很奇怪,仔細看了一下,原來進入容器的時候終端使用的 sh,切換為 bash 就好了(在終端輸入 bash 命令就可以切換為 bash 了)。

sh 和 bash 都是常見的Unix shell,其實還有另外一個是 dash,接下來看下三者的聯系和區別。

sh

sh 是 Shell 的縮寫,是Unix/linux系統的默認shell,也是最古老的shell之一。sh是標準的POSIX shell,有許多不同版本和實現,如 Bourne shell 和 POSIX shell。

bash

bash 是 Bourne-AgAIn Shell 的縮寫,是 sh 的增強版,具有更多的功能和選項。bash提供了命令自動補全、歷史記錄、別名、作業控制等特性。bash 是大多數 Linux 發行版及macOS 系統的默認 shell。

dash

dash 是 Debian Almquist shell 的縮寫,是從.NETBSD 派生而來的輕量級 shell,專門為 Debian 發行版而設計。與 bash 相比,dash 的代碼更精簡,啟動更快,但提供的特性較少。在 Debian 系統上,dash 通常用作 /bin/sh(而不是bash),因為 dash 更加符合 POSIX 標準,并且啟動速度更快。

在很多 Linux 中,/bin/sh 是指向 /bin/bash 的,即 /bin/sh 是 /bin/bash 的軟鏈接

# ls -l /bin/sh
lrwxrwxrwx 1 root root 4 Oct 15  2017 /bin/sh -> bash

在 Debian 系統和基于 Debian 的發行版中,/bin/sh 是指向 /bin/dash 的

# ls -l /bin/sh
lrwxrwxrwx 1 root root 4 Oct 15  2017 /bin/sh -> dash

切換 sh 以使用 bash 而不是 dash 的方法也很簡單,因為 /bin/sh 是軟鏈接,只需更改一下指向 /bin/bash 就好了,執行如下命令

# ln -sf /bin/bash /bin/sh

如果想切換到 dash,執行如下命令

# ln -sf /bin/dash /bin/sh

如果是在制作 Docker 鏡像,想進入基于此鏡像的容器后默認使用 bash,可以在對應的 Dockerfile 中添加如下一行

RUN ln -sf /bin/bash /bin/sh

如果使用的虛擬機默認使用的 sh 或者 dash 的話,想要以后登錄后都默認使用 bash,可以使用 chsh 命令來改變指定用戶的默認 shell 類型,命令如下:

chsh -s /bin/bash user

將命令中的 user 改成自己的用戶名,下次登錄時,將會使用 bash 作為默認 shell 終端類型。

分享到:
標簽:Shell
用戶無頭像

網友整理

注冊時間:

網站:5 個   小程序:0 個  文章:12 篇

  • 51998

    網站

  • 12

    小程序

  • 1030137

    文章

  • 747

    會員

趕快注冊賬號,推廣您的網站吧!
最新入駐小程序

數獨大挑戰2018-06-03

數獨一種數學游戲,玩家需要根據9

答題星2018-06-03

您可以通過答題星輕松地創建試卷

全階人生考試2018-06-03

各種考試題,題庫,初中,高中,大學四六

運動步數有氧達人2018-06-03

記錄運動步數,積累氧氣值。還可偷

每日養生app2018-06-03

每日養生,天天健康

體育訓練成績評定2018-06-03

通用課目體育訓練成績評定