1. 关机&重启命令
命令语法
命令 | 说明 |
---|---|
shutdown –h now | 立刻进行关机 |
shudown -h 1 | 1分钟后关机 |
shutdown –r now | 立刻重启计算机 |
halt | 关机,作用和上面一样 |
reboot | 现在重新启动计算机 |
sync | 把内存的数据同步到磁盘. |
注意细节
- 不管是重启系统还是关闭系统,首先要运行 sync 命令,把内存中的数据写到磁盘中。
- 目前的 shutdown/reboot/halt 等命令均已经在关机前进行了 sync 。
2. 用户登录和注销
命令语法
命令 | 说明 |
---|---|
su - 用户名 | 切换成系统用户身份 |
logout | 注销用户 |
注意细节
- 登录时尽量少用 root 帐号登录,因为它是系统管理员,最大的权限,避免操作失误。可以利用普通用户登录,登录 后再用”su - 用户名’命令来切换成系统管理员身份.
- logout 注销指令在图形运行级别无效,在运行级别 3 下有效.
- 运行级别这个概念,后面给大家介绍
3. 用户管理
基本介绍
Linux 系统是一个多用户多任务的操作系统,任何一个要使用系统资源的用户,都必须首先向系统管理员申请一个 账号,然后以这个账号的身份进入系统
命令语法
命令 | 功能 | 说明 |
---|---|---|
useradd 用户名 | 添加用户 | 当创建用户成功后,会自动的创建和用户同名的家目录 |
passwd 用户名 | 修改密码 | |
userdel 用户名 | 删除用户 | 删除用户,但会保留家目录,此用户的文件不会被删除 |
userdel -r 用户名 | 删除用户 | 删除用户以及用户主目录,此用户的文件会被一起删除 |
id 用户名 | 查询用户信息 | 当用户不存在时,返回无此用户 |
su - 用户名 | 切换用户 | 从权限高的用户切换到权限低的用户,不需要输入密码,反之需要。 |
whoami / who am I | 查看当前用户 | whoami显示的是当前“操作用户”的用户名,而who am i显示的是“登录用户”的用户名。 |
4. 用户组管理
基本介绍
- 类似于角色,系统可以对有共性/权限的多个用户进行统一的管理
命令语法
命令 | 功能 |
---|---|
groupadd 组名 | 新增组 |
groupdel 组名 | 删除组 |
usermod –g 用户组 用户名 | 修改用户的组 |
用户和组相关文件
- /etc/passwd 文件 用户(user)的配置文件,记录用户的各种信息
- 每行的含义:用户名:口令:用户标识号:组标识号:注释性描述:主目录:登录 Shell
- /etc/shadow 文件
口令的配置文件
每行的含义:登录名:加密口令:最后一次修改时间:最小时间间隔:最大时间间隔:警告时间:不活动时间:失效时间:标志 - /etc/group 文件
组(group)的配置文件,记录 Linux 包含的组的信息 每行含义:组名:口令:组标识号:组内用户列表
5.文件目录类
文件目录类(部分)
命令 | 功能 | 说明 |
---|---|---|
pwd | 显示当前工作目录的绝对路径 | |
ls | 显示当前目录可视文件 | ls -a :显示当前目录所有的文件和目录,包括隐藏的。ls -l :以列表的方式显示信息 |
cd | 切换到指定目录 | cd ~ 或者 cd :回到自己的家目录,cd .. :回到当前目录的上一级目录 |
mkdir 目录 | 要创建的单级目录 | mkdir -p 目录 :创建多级目录 |
rmdir 目录 | 要删除的空目录 | 如果需要删除非空目录,需要使用 rm -rf 要删除的目录 |
touch 文件名 | 在该目录下创建一个空文件 | touch 目录/文件名 :在指定目录下 , 创建一个空文件 |
cp | 拷贝文件到指定目录 | 案例:将 /home/hello.txt 拷贝到 /home/bbb 目录下cp hello.txt /home/bbb |
cp -r | 递归拷贝整个文件夹 | 案例:比如将 /home/bbb 整个目录, 拷贝到 /opt cp -r /home/bbb /opt |
rm 文件或目录 | 要删除的文件或目录 | rm -r :递归删除整个文件夹 rm -f : 强制删除不提示(两个可以合并使用rm -rf :递归并强制删除) |
mv指令
移动文件与目录或重命名:
mv <移动的文件或文件夹名> <新的文件或文件夹名>
(功能描述:重命名)mv <移动的文件或文件夹名> <移动的路径>
(功能描述:移动文件)mv <移动的文件或文件夹名> <移动的路径/新的文件名>
(功能描述:移动文件+重命名)
cat 指令
cat 查看文件内容:
cat <文件>
:查看文件内容cat <文件> -n
:查看文件内容并显示行号
使用细节:
- cat 只能浏览文件,而不能修改文件,为了浏览方便,一般会带上 管道命令 | more
- cat -n /etc/profile | more [进行交互]
more 指令
more 指令是一个基于 VI 编辑器的文本过滤器,它以全屏幕的方式按页显示文本文件的内容。more 指令中内置了若
干快捷键(交互的指令),详见操作说明
基本语法
more 要查看的文件
操作说明
配合cat指令
1、使用cat命令显示install.log文件,系统会将install.log文件完整的显示出来,但是用户只能看到文件的末尾部分,该命令适合显示内容比较少的文件。
2、使用more命令显示install.log文件,系统在显示满一个屏幕时暂停,使用空格可以翻页,使用Q键可以退出。
3、使用less命令显示install.log文件,系统同样在显示满一个屏幕时暂停,但是可以使用上下键卷屏,当结束时只需在:后输入Q即可。
4、为了能够分页显示install.log文件中包含i686文本行,可以结合grep和管道符使用。在命令行下输入 “cat install.log | grep “i686”| more ”,这条命令实际上是将install.log文件内的所有内容管道给grep,然后查找包含i686的文本行,最后将查找到的内容管道给more分页输出。
5、同样在提示符下输入命令 cat install.log | grep “i686”| less ,含义也是一样只不过最后管道给的不是more而是less。
less 指令
less 指令用来分屏查看文件内容,它的功能与 more 指令类似,但是比 more 指令更加强大,支持各种显示终端。less
指令在显示文件内容时,并不是一次将整个文件加载之后才显示,而是根据显示需要加载内容,对于显示大型文件具有 较高的效率。
基本语法
less 要查看的文件
操作说明
echo 指令
echo 输出内容到控制台
基本语法
echo [选项] [输出内容]
应用实例
案例: 使用 echo 指令输出环境变量, 比如输出 $PATH $HOSTNAME, echo $HOSTNAME
[root@wwk01 home]# echo $HOSTNAME
案例: 使用 echo 指令输出 hello,world
[root@wwk01 home]# echo "hello,world"
head 指令
head 用于显示文件的开头部分内容,默认情况下 head 指令显示文件的前 10 行内容
基本语法
head 文件
(功能描述:查看文件头 10 行内容)head -n 5 文件
(功能描述:查看文件头 5 行内容,5 可以是任意行数)
tail 指令
tail 用于输出文件中尾部的内容,默认情况下 tail 指令显示文件的前 10 行内容。
基本语法
tail 文件
(功能描述:查看文件尾 10 行内容)tail -n 5 文件
(功能描述:查看文件尾 5 行内容,5 可以是任意行数)tail -f 文件
(功能描述:实时追踪该文档的所有更新)(很常用)
“> ”指令 和 “>>” 指令(重要)
">"输出重定向(内容对文件的内容进行覆盖)
“>>” 追加 (内容对文件的内容进行追加)
基本语法
ls -l >文件
(功能描述:列表的内容写入文件 a.txt 中(覆盖写))ls -al >>文件
(功能描述:列表的内容追加到文件 aa.txt 的末尾)cat 文件 1 > 文件 2
(功能描述:将文件 1 的内容覆盖到文件 2)echo "内容">> 文件
(追加)
应用实例
- 案例 1: 将 /home 目录下的文件列表 写入到 /home/info.txt 中, 覆盖写入
ls -l /home > /home/info.txt
[如果 info.txt 没有,则会创建] - 案例 2: 将当前日历信息 追加到 /home/mycal 文件中 指令为:
cal >> /home/mycal
ln 指令
软链接也称为符号链接,类似于 windows 里的快捷方式,主要存放了链接其他文件的路径
基本语法
ln -s [原文件或目录] [软链接名]
(功能描述:给原文件创建一个软链接)
应用实例
案例 1: 在/home 目录下创建一个软连接 myroot,连接到 /root 目录
ln -s /root /home/myroot
案例 2: 删除软连接 myroot
rm /home/myroot
细节说明
当我们使用 pwd 指令查看目录时,仍然看到的是软链接所在目录。
history 指令
查看已经执行过历史命令,也可以执行历史指令
基本语法
history
(功能描述:查看已经执行过历史命令)
应用实例
案例 1: 显示所有的历史命令 history
案例 2: 显示最近使用过的 10 个指令。 history 10
案例 3:执行历史编号为 5 的指令 history !5
时间日期类
命令 | 说明 |
---|---|
date | 功能描述:显示当前时间 |
date +%Y | 功能描述:显示当前年份 |
date +%m | 功能描述:显示当前月份 |
date +%d | 功能描述:显示当前是哪一天 |
date “+%Y-%m-%d %H:%M:%S” | 功能描述:显示年月日时分秒 |
date -s | 设置时间,比如设置成 2020-11-03 20:02:10:date -s “2020-11-03 20:02:10” |
cal | 查看当月日历 |
cal 年份 | 查看今年的日历 |
搜索查找类
find 指令
find 指令将从指定目录向下递归地遍历其各个子目录,将满足条件的文件或者目录显示在终端。
基本语法
find [搜索范围] [选项]
选项说明
应用实例
案例 1: 按文件名:根据名称查找/home 目录下的 hello.txt 文件
find /home -name hello.txt
案例 2:按拥有者:查找/opt 目录下,用户名称为 nobody 的文件
find /opt -user nobody
案例 3:查找整个 linux 系统下大于 200M 的文件(+n 大于 -n 小于 n 等于, 单位有 k,M,G)
find / -size +200M
locate 指令
locate 指令可以快速定位文件路径。locate 指令利用事先建立的系统中所有文件名称及路径的 locate 数据库实现快速
定位给定的文件。Locate 指令无需遍历整个文件系统,查询速度较快。为了保证查询结果的准确度,管理员必须定期更 新 locate 时刻
基本语法
locate 搜索文件
特别说明
由于 locate 指令基于数据库进行查询,所以第一次运行前,必须使用 updatedb 指令创建 locate 数据库。
应用实例
案例 1: 请使用 locate 指令快速定位 hello.txt 文件所在目录 locate hello.txt
案例 2: which 指令,可以查看某个指令在哪个目录下,比如 ls 指令在哪个目录 which ls
grep 指令和 管道符号 | (常用)
grep 过滤查找 , 管道符,“|”,表示将前一个命令的处理结果输出传递给后面的命令处理
基本语法
grep [选项] 查找内容 源文件
常用选项
应用实例
案例 1: 请在 hello.txt 文件中,查找 “yes” 所在行,并且显示行号
写法 1: cat /home/hello.txt | grep "yes"
写法 2: grep -n "yes" /home/hello.txt
压缩和解压类
gzip/gunzip 指令
gzip 用于压缩文件, gunzip 用于解压的
基本语法
gzip 文件
(功能描述:压缩文件,只能将文件压缩为*.gz 文件)
gunzip 文件.gz
(功能描述:解压缩文件命令)
应用实例
案例 1: gzip 压缩, 将 /home 下的 hello.txt 文件进行压缩
gzip /home/hello.txt
案例 2: gunzip 压缩, 将 /home 下的 hello.txt.gz 文件进行解压缩
gunzip /home/hello.txt.gz
zip/unzip 指令
zip 用于压缩文件, unzip 用于解压的,这个在项目打包发布中很有用的
基本语法
zip [选项] XXX.zip
:将要压缩的内容(功能描述:压缩文件和目录的命令)
unzip [选项] XXX.zip
: (功能描述:解压缩文件)
zip 常用选项
-r
:递归压缩,即压缩目录
unzip 的常用选项
-d <目录>
:指定解压后文件的存放目录
应用实例
案例 1: 将 /home 下的 所有文件/文件夹进行压缩成 myhome.zip
zip -r myhome.zip /home/
[将 home 目录及其包含的文件和子文件夹都压缩]
案例 2: 将 myhome.zip 解压到 /opt/tmp 目录下
mkdir /opt/tmp
[创建一个tmp目录]
unzip -d /opt/tmp /home/myhome.zip
tar 指令(常用)
tar 指令 是打包指令,最后打包后的文件是 .tar.gz 的文件。
基本语法
tar [选项] XXX.tar.gz
打包的内容 (功能描述:打包目录,压缩后的文件格式.tar.gz)
选项说明
应用实例
- 案例 1: 压缩多个文件,将 /home/pig.txt 和 /home/cat.txt 压缩成 pc.tar.gz
tar -zcvf pc.tar.gz /home/pig.txt /home/cat.txt
- 案例 2: 将/home 的文件夹 压缩成 myhome.tar.gz
tar -zcvf myhome.tar.gz /home/
- 案例 3: 将 pc.tar.gz 解压到当前目录
tar -zxvf pc.tar.gz
- 案例4: 将myhome.tar.gz 解压到 /opt/tmp2目录下
tar -zxvf /home/myhome.tar.gz -C /opt/tmp2
-C
:转到指定目录