Shell常用命令
- 1. 日期时间类
- 1.1 date:日期时间类
- 1.1.1 查看当前日期时间
- 1.1.2 查看非当前日期时间
- 1.1.3 设置系统日期时间
- 1.2 cal:日历类
- 2. 用户管理命令
- 2.0 id:查看用户是否存在
- 2.1 useradd:添加新用户
- 2.2 passwd:设置用户密码
- 2.3 userdel:删除用户
- 2.4 usermod:修改用户
- 2.5 su:切换用户
- 2.6 who:查看登录用户信息
- 2.7 sudo:设置普通用户临时具有root权限
- 3. 用户组管理命令
- 3.1 groupadd :添加组
- 3.2 groupdel :删除组
- 3.3 groupmod :修改组
- 4. 文件权限类
- 4.1 文件属性
- 4.2 chmod:修改文件权限
- 4.3 chown:修改文件属主
- 4.3 chgrp:修改文件属组
- 5. 搜索查找类
- 5.1 find:查找文件或者目录
- 5.2 locate:快速定位文件路径
- 5.3 which或whereis:查看可执行文件的位置
- 5.4 grep:过滤查找
- 6. 压缩和解压类
- 6.1 gzip/gunzip:压缩/解压缩文件
- 6.2 zip/unzip:压缩/解压缩文件/目录
- 6.3 tar:打包压缩/解包解压缩文件/目录
1. 日期时间类
1.1 date:日期时间类
-
基本语法:
date [OPTION]... [+FORMAT]
; -
选项说明:
-
参数说明:
1.1.1 查看当前日期时间
- 基本语法:
0)注意%s表示时间戳,以秒为单位;
1.1.2 查看非当前日期时间
- 基本语法:前n天,
date -d "n days ago"
,后n天,date -d "-n days ago"
; - 年月日、时分秒均有类似用法;
1.1.3 设置系统日期时间
- 语法:
date -s "指定时间"
; - 指定日期时间格式需要遵循:“yyyy-mm-dd hh:MM:ss”;
1.2 cal:日历类
- calendar:日历;
- 基本语法:
cal [选项]
; - 选项说明:
2. 用户管理命令
2.0 id:查看用户是否存在
- 基本语法:
id 用户名
;
2.1 useradd:添加新用户
- 基本语法:
useradd 新用户名
或```useradd -g 组名 用户名; - 可通过添加选项指定用户主目录的名字(默认与用户名相同):
useradd -d 主目录名 用户名
; - 必须在root用户下才可以添加普通用户;
2.2 passwd:设置用户密码
- 基本语法:
passwd 用户名
; - 可在
/etc/passwd/
文件中查看系统创建的所有用户;
2.3 userdel:删除用户
- 基本语法:
- 必须在root用户下才可以删除普通用户;
2.4 usermod:修改用户
- 基本语法:
usermod -g 用户组 用户名
将用户添加到指定组;
2.5 su:切换用户
-
switch user:切换用户;
-
基本用法:
-
此方式下,切换用户依次嵌套,初始创建会话的用户处于最外层,此时可通过
exit
逐次退回到最外层用户;
2.6 who:查看登录用户信息
- 基本语法:
2.7 sudo:设置普通用户临时具有root权限
- 修改配置文件,设置普通用户拥有root权限:
- 基本语法:
sudo 普通命令操作
即可以root权限进行操作;
3. 用户组管理命令
3.1 groupadd :添加组
- 基本语法:
groupadd 组名
; - 可在配置文件
/etc/group
下查看所有用户组信息; - 默认系统管理员组组名为wheel;
3.2 groupdel :删除组
- 基本语法:
groupdel 组名
;
3.3 groupmod :修改组
- 基本语法:
groupmod -n 新组名 老组名
;
4. 文件权限类
- Linux系统是一种典型的多用户系统,不同的用户处于不同的地位,拥有不同的权限;
- 为了保护系统的安全性,Linux系统对不同的用户访问同一文件(包括目录文件)的权限做
了不同的规定;
4.1 文件属性
-
可使用
ls -l
命令查看文件的详细信息,包括权限信息;
1)对于文件而言链接数指硬链接数目,对目录而言链接数指子文件夹数量;
2)文件大小以字节为单位;
-
下图中从左往右共10位,用于描述文件属性:
1)0 首位表示文件类型:- 代表文件;d 代表目录;l 链接文档(link file);
2)第1-3位确定属主(该文件的所有者)拥有该文件的权限—User;
3)第4-6位确定属组(所有者的同组用户)拥有该文件的权限—Group;
4)第7-9位确定其他用户拥有该文件的权限 —Other;
-
rwx权限分别代表读取、写入、执行权限,他们作用于文件和目录有略微区别:
1)作用于文件:
权限 | 作用 |
---|---|
r | read,可读取查看文件内容 |
w | write,可修改文件内容;要想删除该文件需要该文件所在目录需要有写入w权限 |
x | execute,可被系统执行 |
2)作用于目录:
权限 | 作用 |
---|---|
r | read,可读取查看目录下内容 |
w | write,可修改目录下内容:文件/目录的增删、重命名操作 |
x | execute,可进入该目录 |
4.2 chmod:修改文件权限
- 方式一:
chmod [ugoa][+\-=][rwx] 文件/目录
,为文件/目录添加/删除/赋值指定权限; - 方式二:
chmod [mode] 文件/目录
,直接指定属主、属组以及其他用户的对应权限,其中mode为3位数字,每位取值范围为0-7; - 对于目录而言,可通过添加
-R
选项修改整个目录及其下面所有文件/目录的文件权限;
4.3 chown:修改文件属主
chown [选项] 目标用户 文件/目录
;- 对于目录而言,可通过添加
-R
选项修改整个目录及其下面所有文件/目录的属主;
4.3 chgrp:修改文件属组
chgrp 目标用户组 文件/目录
;
5. 搜索查找类
5.1 find:查找文件或者目录
- 基本语法:
find [搜索范围] [选项]
; - 选项:
1)-name选项下,查询方式可以为文件名或者字符串模式,指定匹配模式时可使用双引号括起来;
2)-size选项下,文件大小可为指定范围,使用+xxx表示文件大小大于xxx的文件,使用-xxx表示文件大小小于xxx的文件;
5.2 locate:快速定位文件路径
- locate基于系统提前建立的数据库进行查询,速度较快;
- 该数据库保存所有文件名称及路径;
- 基本语法:
locate 文件/目录
; - 为保证查询结果准确性,该操作执行前提是提前执行
updatedb
更新数据库;
5.3 which或whereis:查看可执行文件的位置
which 命令名
或whereis 命令名
;
5.4 grep:过滤查找
- |:管道符,表示将某命令的执行结果作为后续命令的输入进行处理;
- 基本语法:
grep 选项 查找内容 源文件
; - 选项:-n 显示匹配行及行号;
- 常配合
管道符
进行查询操作; - 可配合
管道符
、wc
命令统计词频;
6. 压缩和解压类
6.1 gzip/gunzip:压缩/解压缩文件
- 只能对文件进行压缩;
- 不保留原始文件;
- 同时压缩多个文件会生成对应数量的压缩包;
- 压缩包后缀为.gz;
- 压缩语法:
gzip 待压缩文件
; - 解压缩语法:
gunzip 压缩包.gz
;
6.2 zip/unzip:压缩/解压缩文件/目录
- zip命令可压缩目录且保留源文件;
- 压缩语法:
zip [选项] XXX.zip 将要压缩的内容
; - 解压缩语法:
unzip [选项] XXX.zip
; - 选项说明:
6.3 tar:打包压缩/解包解压缩文件/目录
- 基本语法:
tar [选项] XXX.tar.gz 将要打包进去的内容
; - 通过指定不同的选项实现解包、打包等功能;
- 选项说明:
- 打包压缩常用选项:
-zcvf
; - 解包解压缩常用选项:
-zxvf
;
参考资料:
- 尚硅谷;