一区二区三区日韩精品-日韩经典一区二区三区-五月激情综合丁香婷婷-欧美精品中文字幕专区

分享

找出Linux上使用的shell的最佳方法

 cn1188181 2021-01-10

來自:Linux迷   
鏈接:https://www.

Linux和Unix都提供了開箱即用的各種shell。你可以找到bash (Bourne shell), ksh (Korn shell), csh (C shell)/tcsh (TC shell), sh (Bourne shell)和更多默認(rèn)安裝。然而,你如何檢查自己使用的shell 呢?找出我在Linux上使用的shell的最好方法是什么? echo $SHEL 不是那么可靠。本文解釋了如何找出自己在Linux、MacOS、FreeBSD或類Unix系統(tǒng)中使用的shell。
下面的echo命令或printf命令應(yīng)該可以使用:
linuxmi@linuxmi:~/www.$ echo '$SHELL'
/bin/bash
或者
linuxmi@linuxmi:~/www.$ printf '我現(xiàn)在的shell - %s\n' '$SHELL'
我現(xiàn)在的shell - /bin/bash
請注意,這$SHELL是當(dāng)前用戶的shell程序,但不一定是當(dāng)前正在運(yùn)行的shell程序。試試下面的例子
linuxmi@linuxmi:~/www.$ echo '我現(xiàn)在的shell是 $SHELL ($0)'
我現(xiàn)在的shell是 /bin/bash (bash)
linuxmi@linuxmi:~/www.$ ksh
$ echo '我現(xiàn)在的shell是 $SHELL ($0)'
我現(xiàn)在的shell是 /bin/bash (ksh)
因此,我建議使用以下語法來檢查您正在使用哪個shell。

如何檢查我正在使用哪個shell?

這是另一個古老的Unix技巧。使用帶-p {pid}選項(xiàng)的ps命令。以下命令選擇其進(jìn)程ID號顯示在pid中的進(jìn)程。使用以下命令找出您所在的shell:
示例輸出:
那么傳遞給-p選項(xiàng)的$參數(shù)是什么?記住$返回當(dāng)前進(jìn)程的PID(進(jìn)程標(biāo)識號),而當(dāng)前進(jìn)程就是您的shell。因此,在該編號上運(yùn)行ps會顯示您的Shell的進(jìn)程狀態(tài)列表。在該清單中,您將找到shell的名稱(查找CMD列)。
在我的Linux機(jī)器上:
linuxmi@linuxmi:~/www.$ ps -p $$
樣例輸出:
PID     TTY    TIME      CMD
10603 pts/2 00:00:00 bash
您可以按以下方式將shell名稱存儲在變量中:
MYSHELL=`ps -hp $$|awk '{echo $5}'`
請注意,這些是反引號,而不是撇號。或者,如果您有bash shell,則最好嘗試以下方法:
MYSHELL=$(ps -hp $$|awk '{echo $5}')
另一個選項(xiàng)如下:
echo $0
printf '%s\n' $0
以上命令的輸出示例:
linuxmi@linuxmi:~/www.$ ksh
$ echo $0
ksh
$ ps -p $$
PID TTY TIME CMD
12350 pts/6 00:00:00 ksh
$ csh
% ps -p $$
PID TTY TIME CMD
12357 pts/6 00:00:00 csh
%

如何檢查我的Linux機(jī)器上安裝了多少個shell ?

/etc/shells是一個文本文件,其中包含有效登錄shell的完整路徑。輸入以下[nixmd name=”cat”]以查看列出您的Linux或Unix機(jī)器上安裝了多少個Shell:
linuxmi@linuxmi:~/www.$ cat /etc/shells
# /etc/shells: valid login shells
/bin/sh
/bin/bash
/usr/bin/bash
/bin/rbash
/usr/bin/rbash
/bin/dash
/usr/bin/dash
/usr/bin/ksh2020
/usr/bin/rksh2020
/bin/csh
/usr/bin/csh

當(dāng)我打開終端應(yīng)用時,默認(rèn)情況下打開哪個shell?

您的默認(rèn)外殼程序在/ etc / passwd文件中定義。因此,請嘗試以下grep命令:
linuxmi@linuxmi:~/www.$ grep '^$USER' /etc/passwd
看起來/bin/bash shell是我的默認(rèn)shell。想要更改您的默認(rèn)shell?請閱讀“在Linux或Unix中更改shell”頁面以了解更多信息。讓我們再次總結(jié)所有命令。

如何檢查我正在使用哪個shell:

使用以下Linux或Unix命令:
  1. ps -p $$ -可靠地顯示您當(dāng)前的shell名稱。

  2. echo '$SHELL' -顯示當(dāng)前用戶的shell,但不一定是正在運(yùn)行的shell。

  3. echo $0 -在Linux或類似Unix的系統(tǒng)上獲取當(dāng)前shell解釋器名稱的另一種可靠且簡單的方法。

  4. cat /etc/shells -列出當(dāng)前安裝的有效登錄Shell的路徑名

  5. grep '^$USER' /etc/passwd -打印默認(rèn)的shell名稱。當(dāng)您打開終端窗口時,默認(rèn)shell程序?qū)⑦\(yùn)行。

  6. chsh -s /bin/ksh -將您的帳戶使用的shell程序從/ bin / bash(默認(rèn))更改為/bin/ksh 


...END...

    本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多

    黄色av尤物白丝在线播放网址 | 91欧美日韩国产在线观看| 一区二区三区免费公开| 精品精品国产欧美在线| 亚洲国产成人av毛片国产| 白丝美女被插入视频在线观看| 国产成人精品视频一二区| 日韩中文字幕在线不卡一区| 日本久久中文字幕免费| 亚洲精品国产精品日韩| 国产精品美女午夜福利| 亚洲最新一区二区三区| 精品一区二区三区三级视频 | 欧美日韩亚洲国产av| 夫妻性生活一级黄色录像| 欧美黑人暴力猛交精品| 粉嫩国产美女国产av| 高清一区二区三区不卡免费| 欧美大胆女人的大胆人体| 日本欧美一区二区三区高清| 亚洲中文字幕在线综合视频| 手机在线观看亚洲中文字幕| 自拍偷女厕所拍偷区亚洲综合| 日韩中文字幕欧美亚洲| 精品欧美一区二区三久久| 加勒比东京热拍拍一区二区| 精品国产成人av一区二区三区| 好吊妞在线免费观看视频| 日韩精品日韩激情日韩综合| 免费精品国产日韩热久久| 欧美在线观看视频免费不卡| 国产一区二区三区丝袜不卡| 国产色偷丝袜麻豆亚洲| 亚洲av又爽又色又色| 欧美日韩在线视频一区| 自拍偷拍一区二区三区| 一级片黄色一区二区三区| 亚洲欧美日韩在线中文字幕| 好吊妞在线免费观看视频| 在线观看免费视频你懂的| 麻豆蜜桃星空传媒在线观看 |