1、shell介绍
Linux 支持的shell种类很多,目前比较流行shell有以下几种:
Bourne Shell(简称sh):BourneShell由AT&T贝尔实验室的S.R.Bourne开发,也因开发者的姓名而得名。它是Unix的第一个Shell程序,早已成为工业标准。目前几乎所有的Linux系统都支持它。不过BourneShell的作业控制功能薄弱,且不支持别名与历史记录等功能。目前大多操作系统是将其作为应急Shell使用。
C Shell(简称csh):CShell由加利福尼亚大学伯克利分校开发。最初开发的目的是改进BourneShell的一些缺点,并使Shell脚本的编程风格类似于C语言,因而受到广大C程序员的拥护。不过CShell的健壮性不如Bourne Shell
Korn Shell(简称ksh):KornShell由David Korn开发,解决了BourneShell的用户交互问题,并克服了CShell的脚本编程怪癖的缺点。KornShell的缺点是需要许可证,这导致它应用范围不如BourneShell广泛。
Bourne Again Shell(简称bash):BourneAgain Shell由AT&T贝尔实验室开发,是BourneShell的增强版。随着几年的不断完善,已经成为最流行的Shell。它包括了早期的BourneShell和Korn Shell的原始功能,以及某些CShell脚本语言的特性。此外,它还具有以下特点:能够提供环境变量以配置用户Shell环境,支持历史记录,内置算术功能,支持通配符表达式,将常用命令内置简化。
通常shell命令提示符采用以下的格式:
username:用户名,显示当前登录用户的账户名。
hostname:主机名,例如远程登录后,则显示登录的主机名。
direction:目录名,显示当前所处的路径,当在根目录下显示为“/”,当在用户主目录下显示为“~”
“$”是Shell提示符,如果当前用户为超级用户,提示符为“#”,其他用户的提示符均为“$”。
2、shell命令之用户管理
2.1 用户的定义
2.1.1 用户的属性
2、口令
3、用户ID(UID)
4、用户主目录(HOME)
5、用户shell
2.1.2 用户与组
2.1.3 相关配置文件
经过加密的口令
UID
默认的GID
个人信息
主目录
登陆shell
linzhou:X:1006:1000:linzhou,1,1,1,2:/home/linzhou:bin/bash
这个的意思也就是说,登陆名称为linzhou,加密口令X,用户ID为1006,组ID为1000,个人信息为linzhou,1,1,1,2,主目录为/home/linzhou,默认的shell为bin/bash
2、加密的口令
3、GID号
4、成员列表,彼此用逗号隔开
2.2 用户组shell命令
2.2.1 添加用户adduser
实例:
# adduser newuser
添加用户名为newuser的新用户
2.2.2 删除用户deluser
语法: deluser <username>
使用方法:
deluser --remove-home user1
添加--remove可以删除用户user1的同时删除用户的工作目录
2.2.3 修改用户属性usermod
[-d home [-m]] [-s shell] [-c comment]
[-l new_name] [-f inactive][-e expire]
[-p passwd] [-L|-U] name
参数说明:
-u 修改用户ID
-g 修改用户所属的组
-G 修改用户所属的附加群组
-d 修改用户登录时的目录
-s 修改用户登录后所用shell
-c 修改用户账号的备注文字
-l 修改用户账号名称
-f 修改在密码过期后多少天即关闭该账号
-e 修改账号的有效期限
-p 修改账户密码
-L 锁定用户密码
-U 接触密码锁定
2.2.4 添加组groupadd
使用方法:
groupadd -g 105 group
添加一个组,组名为group,组ID为105
2.2.5 删除组
语法: delgroup groupname
使用方法:
delgroup groupname1