linux chsh命令参数及用法详解(linux设置系统shell命令) 【百科全说】-凯发k8官方旗舰厅

腾讯视频/爱奇艺/优酷/外卖 充值4折起

使用权限:所有使用者
命令:chsh
用法:shell>> chsh
说明:更改使用者 shell 设定
范例:
shell>> chsh
changing fihanging shell for user1
password: [del]
new shell [/bin/tcsh]: ### [是目前使用的 shell]
[del]
shell>> chsh -l ### 展示 /etc/shells 档案内容
/bin/bash
/bin/sh
/bin/ash
/bin/bsh
/bin/tcsh
/bin/csh

推荐阅读:用chsh命令选择shell

1 我想知道我机器安装了哪些shell?
两种方法可以查看:
第一种:
[rocrocket@ ~]$ chsh -l
/bin/sh
/bin/bash
/sbin/nologin
/bin/zsh
第二种:
[rocrocket@ ~]$ cat /etc/shells
/bin/sh
/bin/bash
/sbin/nologin
/bin/zsh
其实chsh -l也是来查看这个文件。
2 我想知道我当前正在使用的shell是哪个阿?
[rocrocket@ ~]$ echo $shell
/bin/bash
注意shell一定要是大写。可以看到,我目前使用的shell是/bin/bash
3 执行了zsh之后,我查看当前shell类型仍然是/bin/bash呢?
请注意,我们虽然执行了zsh,但是所谓“当前的shell”是一个大环境的概念,是针对一个已登录的用户而言的。而我们执行zsh只是启动了一个zsh的解释器程序而已,并没有改变大环境。如果想改变“当前的shell”,那么还是要使用chsh才可以。
4 我想把我的shell改成zsh!
[rocrocket@ ~]$ chsh -s /bin/zsh
changing shell for rocrocket.
password:
shell changed.
[rocrocket@ ~]$
使用chsh加选项-s就可以修改登录的shell了!
你会发现你现在执行echo $shell后仍然输出为/bin/bash,这是因为你需要重启你的shell才完全投入到zsh怀抱中去。
5 chsh -s到底是修改了哪里?
秘密告诉你吧。chsh -s其实修改的就是/etc/passwd文件里和你的用户名相对应的那一行。现在我来查看下:
[rocrocket@ ~]$ cat /etc/passwd|grep ^rocrocket
rocrocket:x:500:500:rocrocket,china:/rocrocket/psb/home:/bin/zsh
看!你可以发现输出内容的最后部分已经变成了/bin/zsh了!下次你重启的时候,linux就会读取这一命令来启动你的shell了!
好了,我要恢复正常工作,把shell修改会我熟悉的/bin/bash了!
[rocrocket@ ~]$ chsh -s /bin/bash
changing shell for rocrocket.
password:
shell changed.

07/13 13:42
linux who 命令 详解 linux最常用命令之一 功能说明:显示目前登入系统的用户信息。 语法:who [-himqsw][--help][--version][am i][记录文件] 补充说明:执行这项指令可得知目前有那些用户登入系统,单独执行who指令会列出登入帐号,使用的 终端机,登入时间以及从何处登入或正在使用哪个x显示器。 参数: -h或--heading  显示各栏位的标题信息列。 -i或-u或--idle  显示闲置时间,若该用户在前一分
07/15 02:41
linux kill 命令使用详解 功能说明:删除执行中的程序或工作。 语法:kill [-s <信息名称或编号>][程序] 或 kill [-l <信息编号>] 补充说明:kill可将指定的信息送至程序。预设的信息为sigterm(15),可将指定程序终止。若仍无法终止该程序,可使用sigkill(9)信息尝试强制删除程序。程序或工作的编号可利用ps指令或jobs指令查看。 参数:  -l <信息编号>  若不加<信息编号>选项,则-l参
07/14 11:25
linux renice 命令详解 功能说明:调整程序优先级。 语法:renice [优先等级][-g <程序群组名称>...][-p <程序识别码>...][-u <用户名称>...] 补充说明:renice指令可重新调整程序执行的优先权等级。预设是以程序识别码指定程序调整其优先权,您亦可以指定程序群组或用户名称调整优先权等级,并修改所有隶属于该程序群组或用户的程序的优先权。等级范围从-20--19,只有系统管理者可以改变其他用户程序的优先权
07/17 12:12
uname 命令可用于大多数 unix 和类 unix 系统以及 linux。 功能说明:uname用来获取电脑和操作系统的相关信息。 语法:uname [-amnrsvpio][--help][--version] 补充说明:uname可显示linux主机所用的操作系统的版本、硬件的名称等基本信息。 参数: -a或–all 详细输出所有信息,依次为内核名称,主机名,内核版本号,内核版本,硬件名,处理器类型,硬件平台类型,操作系统名称 -m或–machine 显示主机的硬件(cpu)名
07/19 22:26
命令: free 功能说明:显示内存状态。 语法: free [-bkmotv][-s <间隔秒数>] 补充说明:free指令会显示内存的使用情况,包括实体内存,虚拟的交换文件内存,共享内存区段,以及系统核心使用的缓冲区等。 参数:  -b  以byte为单位显示内存使用情况。  -k  以kb为单位显示内存使用情况。  -m  以mb为单位显示内存使用情况。  -o  不显示缓冲区调节列。  -s<间隔秒数>  持续观察内存使用状况。  -t  显示内存总和
07/14 02:53
名称:halt 使用权限:系统管理者 使用方式:halt [-n] [-w] [-d] [-f] [-i] [-p] 说明:若系统的 runlevel 为 0 或 6 ,则关闭系统,否则以 shutdown 指令(加上 -h 参数)来取代 参数: -n : 在关机前不做将记忆体资料写回硬盘的动作 -w : 并不会真的关机,只是把记录写到 /var/log/wtmp 档案里 -d : 不把记录写到 /var/log/wtmp 档案里(-n 这个参数包含了 -d) -f
07/13 19:39
date命令 date命令的功能是显示和设置系统日期和时间。 该命令的一般格式为: date [选项] 显示时间格式(以 开头,后面接格式) date 设置时间格式 命令中各选项的含义分别为: -d datestr, --date datestr 显示由datestr描述的日期 -s datestr, --set datestr 设置datestr 描述的日期 -u, --universal 显示或设置通用时间 时间域 % h 小时(00..23) % i 小
07/13 17:43
groupmod(group modify) 功能说明:更改群组识别码或名称。 语法:groupmod [-g <群组识别码> <-o>][-n <新群组名称>][群组名称] 补充说明:需要更改群组的识别码或名称时,可用groupmod指令来完成这项工作。 参数:  -g <群组识别码>  设置欲使用的群组识别码。  -o  重复使用群组识别码。  -n <新群组名称>  设置欲使用的群组名称。 示例:修改组名. [root@
07/16 23:31
功能说明:建立用户帐号。 语法:useradd [-mmnr][-c <备注>][-d <登入目录>][-e <有效期限>][-f <缓冲天数>][-g <群组>][-g <群组>][-s ][-u ][用户帐号] 或 useradd -d [-b][-e <有效期限>][-f <缓冲天数>][-g <群组>][-g <群组>
网站地图