docker exec命令中的command參數有哪些可以進入shell命令行

在學習docker的時候,發現在執行docker exec的時候,後面跟一個command參數可以進入命令行,那麼有哪些參數可以直接進入shell命令行呢?

Shell,它們各有所長,有的佔用資源少,有的支持高級編程功能,有的兼容性好,有的重視用戶體驗。

sh

sh的全稱是Bourne shell,由AT&T公司的Steve Bourne開發,爲了紀念他,就用他的名字命名了。

sh是UNIX上的標準shell,很多UNIX版本都配有sh。sh是第一個流行的Shell。

csh

sh之後另一個廣爲流傳的shell是由柏克萊大學的Bill Joy設計的,這個shell的語法有點類似C語言,所以才得名爲C shell ,簡稱爲csh。

tcsh

tcsh是csh的增強版,加入了命令補全功能,提供了更加強大的語法支持。

ash

一個簡單的輕量級的Shell,佔用資源少,適合運行於低內存環境,但是與下面講到的 bash shell 完全兼容。

bash

bash shell是Linux的默認shell,由GNU組織開發,保持了對sh shell的兼容性,是各種Linux發行版默認配置的 shell。儘管如此,bash和sh還是有一些不同之處:

  1. 一方面,bash擴展了一些命令和參數;

  2. 另一方面,bash並不完全和sh;

  3. 兼容,它們有些行爲並不一致,但在大多數企業運維的情況下區別不大,特殊場景可以使用bash代替sh。

查看 Shell

Shell是一個程序,一般都是放在/bin或者/user/bin目錄下,當前Linux系統可用的Shell都記錄在/etc/shells文件中。/etc/shells是一個純文本文件,你可以在圖形界面下打開它,也可以使用cat命令查看它。

# cat /etc/shells
/bin/sh
/bin/bash
/sbin/nologin
/usr/bin/sh
/usr/bin/bash
/usr/sbin/nologin
/bin/tcsh
/bin/csh
# echo $SHELL
/bin/bash

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章