第九章 linux 实操篇 - 实用指令
9.1 基本介绍
运行级别说明:
0 :关机
1 :单用户【找回丢失密码】
2:多用户状态没有网络服务
3:多用户状态有网络服务
4:系统未使用保留给用户
5:图形界面
6:系统重启
常用运行级别是 3 和 5
命令:init [0,1,2,3,4,5,6] 例如:init 5
9.2 CentOS 7 后运行级别说明
注意:上面用到的方法只是暂时转变,默认并没有变
要想变默认的需要:systemctl set-default TARGET.target
TARGET.target :
multi-user.target: analogous to runlevel 3
graphical.target: analogous to runlevel 5
9.3 找回root 密码
-
首先,启动系统,进入开机界面,**按“e”**进入编辑界面。
-
进入编辑后,把光标向下移动,找到“Linux16”开头内容所在行,在后面输入
init=/bin/sh
-
输入完成后,直接按快捷键: Ctrl + x 进入单用户模式
-
在光标闪烁的位置中输入:
mount -o remount,rw /
完成后按回车
-
在新的一行最后面输入:
passwd
完成后回车,输入密码,然后再次确认密码即可,密码修改后会显示password 的样式 说明修改成功。
-
在鼠标闪烁的位置中(最后一行)输入:
touch /.autorelabel
-
输入
exec /sbin/init
此时等待系统自动修改密码(这个过程有点长)完成后,系统会自动重启。
9.4 帮助指令
man: man [命令] (获得帮助信息)
如:man ls
**help: **help [命令] (获得shell内置命令的帮助信息)
个人推荐网站:https://wangchujiang.com/linux-command
9.5 文件目录类
基本指令:
语法 | 作用说明 | 选项 |
---|---|---|
pwd | 显示当前工作目录的绝对路径 | |
ls [选项] [目录或文件] | 现实当前目录信息内容 | -a(包括隐藏的)-l (以列表方式显示信息) |
cd [目录或文件] | 切换到指定目录 | cd ~ / cd : 回到自己的家目录 cd…:回到上一级目录 |
mkdir [选项] [要创建的目录或文件夹] | 用于创建目录 | -p :创建多级目录 |
rmdir [选项] 要删除的空目录 | 删除目录 | rm -rf [要删除的目录]: 有内容也可以删除 |
touch 文件名称 | 创建空文件 | |
cp [选项] 文件 指定目录 | 拷贝文件到指定目录 | - r : 递归复制整个目录 \cp : 强制覆盖不提示 |
rm [选项] 要删除的文件目录 | 移除文件或目录 | -r : 递归删除整个文件夹 -f : 强制删除不提示 |
mv 原文件 新文件 | 重命名 | |
mv 移动文件所在目录 目标目录 | 移动文件 | |
cat [选项] 要查看文件 | 查看文件内容 | - n : 显示行号 注:为了交互可以加管道命令 cat -n 文件 | more |
more 要查看文件 | 全屏幕的方式按页显示文本文件内容 | |
less 要查看文件 | 分屏查看文件内容 | |
echo [选项] [输出内容] | 输出内容到控制台 | |
head 文件 | 显示文件开头部分默认前10行内容 | head -n 5 文件(查看前五行,5可以是任意行数) |
tail 文件 | 输出文件尾部内容默认后10行内容 | tail -n 5 文件 (后五行) tail -f 文件: 实时追踪文档更新 |
> 与 >> | > 覆盖写 >> 追加写 | |
ln -s [原文件或目录] [软链接名] | 给原文件创建一个软连接 | 例:创建一个myroot 连接到 /root 目录 ln -s /root /home/myroot |
history | 查看已经执行过的历史命令 | history 10 : 显示最近用过的10个指令 ! 5:执行历史编号为5的指令 |
more 中的快捷键 | 说明 |
---|---|
空格(space) | 向下翻一页 |
Enter | 向下翻一行 |
q | 立即离开more,不再显示文件内容 |
Ctrl + F | 向下滚动一屏 |
Ctrl + B | 返回上一屏 |
= | 输出当前行的行号 |
:f | 输出文件名和当前行的行号 |
less 中的快捷键 | 说明 |
---|---|
空格(space) | 向下翻一页 |
[pagedown] | 向下翻一页 |
[pageup] | 向上翻一页 |
/字串 | 向下搜寻【字串】的功能;n:向下查找 N:向上查找 |
?字串 | 向上搜寻【字串】的功能;n:向上查找 N:向下查找 |
q | 离开 |
more: 是一个基于 VI 编辑器的文本过滤器,它以全屏幕的方式按页显示文本文件的内容。more 指令中内置了若 干快捷键(交互的指令)
less: 用来分屏查看文件内容,它的功能与 more 指令类似,但是比 more 指令更加强大,支持各种显示终端。less 指令在显示文件内容时,并不是一次将整个文件加载之后才显示,而是根据显示需要加载内容,对于显示大型文件具有 较高的效率。
9.6 date 指令 - 显示当前日期
基本语法:date : 显示当前时间
date “+%Y-%m-%d %H:%M:%S” : 显示年月日时分秒
其中的"-"可用别的替代
设置日期:date -s 字符串时间
查看日历: cal [年份] (不加默认本月日历)
9.7 搜索查找类
9.7.1 find指令
基本语法:find [搜索范围] [选项]
选项 | 功能 |
---|---|
-name <查询方式> | 按照指定的文件名查找模式查找文件 |
-user <用户名> | 查找属于指定用户名的所有文件 |
-size <文件大小> | 按照指定的文件大小查找文件 |
应用实例
案例 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
9.7.2 locate指令
locate 指令可以快速定位文件路径。locate 指令利用事先建立的系统中所有文件名称及路径的 locate 数据库实现快速 定位给定的文件。Locate 指令无需遍历整个文件系统,查询速度较快。为了保证查询结果的准确度,管理员必须定期更 新 locate 时刻
基本语法 locate 搜索文件
特别说明 由于 locate 指令基于数据库进行查询,所以第一次运行前,必须使用 updatedb 指令创建 locate 数据库。
which 指令,可以查看某个指令在哪个目录下,比如 ls 指令在哪个目录 which ls
9.7.3 grep指令和管道符号 |
grep : 过滤查找,管道符 “|” 表示将前一个命令的处理结果输出传递给后面的命令处理
基本语法: grep [选项] 查找内容 源文件
常用选项:
-n:显示匹配行及行号
-i:忽略字母大小写
实例: 请在 hello.txt 文件中查找“yes” 所在行,并显示行号
写法一:cat /home/hello.txt
写法二:grep -n “yes” /home/hello.txt
9.8 压缩和解压类
指令语法 | 解释 | 常用选项 |
---|---|---|
gzip 文件 | 压缩文件,只能将文件压缩为*.gz 文件 | |
gunzip 文件.gz | 解压缩文件命令 | |
zip [选项] XXX.zip 将要压缩的内容 | 压缩文件和目录的命令 | -r:递归压缩,即压缩目录 |
unzip [选项] XXX.zip | 解压缩文件 | -d<目录> : 指定解压后文件的存放目录 |
tar [选项] XXX.tar.gz 打包的内容 | 打包目录,压缩后文件格式tar.gz | tar -zcvf 常用于压缩 tar -zxvf 常用于解压 |
tar 中的选项 | 功能 |
---|---|
-c | 产生.tar打包文件 |
-v | 显示详细信息 |
-f | 指定压缩后的文件名 |
-z | 打包同时压缩 |
-x | 解包.tar文件 |
|
tar 中的选项 | 功能 |
---|---|
-c | 产生.tar打包文件 |
-v | 显示详细信息 |
-f | 指定压缩后的文件名 |
-z | 打包同时压缩 |
-x | 解包.tar文件 |