2023-08-29 10:19:41來源:今日頭條
在調試基于 Debian 的 Docker 鏡像時,進入容器后在終端中按上箭頭鍵后終端顯示^[[A,下箭頭顯示^[[B,右箭頭顯示^[[C,左箭頭顯示^[[D,按刪除鍵也是顯示了幾個特殊字符。很奇怪,仔細看了一下,原來進入容器的時候終端使用的 sh,切換為 bash 就好了(在終端輸入 bash 命令就可以切換為 bash 了)。
sh 和 bash 都是常見的Unix shell,其實還有另外一個是 dash,接下來看下三者的聯系和區別。
shsh 是 Shell 的縮寫,是Unix/Linux系統的默認shell,也是最古老的shell之一。sh是標準的POSIX shell,有許多不同版本和實現,如 Bourne shell 和 POSIX shell。
(相關資料圖)
bash 是 Bourne-Again Shell 的縮寫,是 sh 的增強版,具有更多的功能和選項。bash提供了命令自動補全、歷史記錄、別名、作業控制等特性。bash 是大多數 Linux 發行版及macOS 系統的默認 shell。
dashdash 是 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/shlrwxrwxrwx 1 root root 4 Oct 15 2017 /bin/sh -> bash
在 Debian 系統和基于 Debian 的發行版中,/bin/sh 是指向 /bin/dash 的
# ls -l /bin/shlrwxrwxrwx 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 終端類型。
關鍵詞:
在調試基于Debian的Docker鏡像時,進入容器后在終端中按上箭頭鍵后終端
占用傳感器的應用:節省能源并提高生產力占用感應可以節省能源,但在商
軟件供應鏈安全如今已經成了一個世界性難題。從2021年底ApacheLog4j“
圖片只需要上傳數據集就可以自動化分析,我們測試以下,首先我找了一份
引言G行始終踐行“以客戶為中心”的服務理念,通過科技賦能,不斷優化
按照海關的數據,2022年我國進口光刻機的金額為39 63億美元,其中荷蘭A
這個暑假,你拿到駕照了嗎?每逢寒暑假,駕校便洋溢著青春的氣息。許多
對于并沒有媳婦兒的我愛羅來說,可能每天的飯菜就只能由自己解決了,
導讀1、樓主您好,很高興回答您的問題。我是做淘寶店的,您有什么問題
今天來聊聊冒么辦最簡單的方法,感冒怎么辦簡單的方法的文章,現在就為
視頻剪輯丁偉近日,有網友發文稱,云南昆明某學校高中部還在施工就讓學
格隆匯8月28日丨重慶鋼鐵股份(01053 HK)發布公告,因公司內部工作安排
搜狐韓娛訊韓國女團BBGIRLS新歌成績不及預期,首周銷量未能達到1萬張。
在快速發展的數字化時代,應對日益復雜的業務需求和技術挑戰,傳統的單
邊緣計算是指在距離數據源最近的一側集成網絡、計算、存儲和應用能力以