linux chsh命令參數(shù)及用法詳解
你還在為不知道linux chsh命令參數(shù)及用法詳解而不知所措么?下面來(lái)是學(xué)習(xí)啦小編為大家收集的linux chsh命令參數(shù)及用法詳解,歡迎大家閱讀:
linux chsh命令參數(shù)及用法詳解
使用權(quán)限:所有使用者
命令:chsh
用法:shell>> chsh
說(shuō)明:更改使用者 shell 設(shè)定
范例:
shell>> chsh
Changing fihanging shell for user1
Password: [del]
New shell [/bin/tcsh]: ### [是目前使用的 shell]
[del]
shell>> chsh -l ### 展示 /etc/shells 檔案內(nèi)容
/bin/bash
/bin/sh
/bin/ash
/bin/bsh
/bin/tcsh
/bin/csh
推薦閱讀:用chsh命令選擇shell
1 我想知道我機(jī)器安裝了哪些shell?
兩種方法可以查看:
第一種:
[rocrocket@jb51.net ~]$ chsh -l
/bin/sh
/bin/bash
/sbin/nologin
/bin/zsh
第二種:
[rocrocket@jb51.net ~]$ cat /etc/shells
/bin/sh
/bin/bash
/sbin/nologin
/bin/zsh
其實(shí)chsh -l也是來(lái)查看這個(gè)文件。
2 我想知道我當(dāng)前正在使用的shell是哪個(gè)阿?
[rocrocket@jb51.net ~]$ echo $SHELL
/bin/bash
注意SHELL一定要是大寫(xiě)??梢钥吹?,我目前使用的shell是/bin/bash
3 執(zhí)行了zsh之后,我查看當(dāng)前shell類(lèi)型仍然是/bin/bash呢?
請(qǐng)注意,我們雖然執(zhí)行了zsh,但是所謂“當(dāng)前的shell”是一個(gè)大環(huán)境的概念,是針對(duì)一個(gè)已登錄的用戶(hù)而言的。而我們執(zhí)行zsh只是啟動(dòng)了一個(gè)zsh的解釋器程序而已,并沒(méi)有改變大環(huán)境。如果想改變“當(dāng)前的shell”,那么還是要使用chsh才可以。
4 我想把我的shell改成zsh!
[rocrocket@jb51.net ~]$ chsh -s /bin/zsh
Changing shell for rocrocket.
Password:
Shell changed.
[rocrocket@jb51.net ~]$
使用chsh加選項(xiàng)-s就可以修改登錄的shell了!
你會(huì)發(fā)現(xiàn)你現(xiàn)在執(zhí)行echo $SHELL后仍然輸出為/bin/bash,這是因?yàn)槟阈枰貑⒛愕膕hell才完全投入到zsh懷抱中去。
5 chsh -s到底是修改了哪里?
秘密告訴你吧。chsh -s其實(shí)修改的就是/etc/passwd文件里和你的用戶(hù)名相對(duì)應(yīng)的那一行。現(xiàn)在我來(lái)查看下:
[rocrocket@jb51.net ~]$ cat /etc/passwd|grep ^rocrocket
rocrocket:x:500:500:rocrocket,China:/rocrocket/PSB/home:/bin/zsh
看!你可以發(fā)現(xiàn)輸出內(nèi)容的最后部分已經(jīng)變成了/bin/zsh了!下次你重啟的時(shí)候,linux就會(huì)讀取這一命令來(lái)啟動(dòng)你的shell了!
好了,我要恢復(fù)正常工作,把shell修改會(huì)我熟悉的/bin/bash了!
[rocrocket@jb51.net ~]$ chsh -s /bin/bash
Changing shell for rocrocket.
Password:
Shell changed.
看了“linux chsh命令參數(shù)及用法詳解”還想看: