图解Linux 韩顺平老师 自学笔记(二)
创始人
2024-05-24 08:06:55
0

图解Linux 韩顺平老师 自学笔记 二

  • 第6章Linux实操篇-Vi和Vim编辑器
    • 6.1 vi和vim的基本介绍
    • 6.2 vi和常用的三种模式
      • 6.2.1正常模式
      • 6.2.2 插入模式
      • 6.2.3命令行模式
    • 6.3 vi和vim基本使用
    • 6.4各种模式的相互切换
    • 6.5 vi和vim快捷键
      • 6.5.1 快捷键使用练习
    • 6.6 vi和vim课堂练习
  • 第7章Linux实操篇-开机、重启和用户登录注销
    • 7.1 关机&重启命令
      • 7.1.1基本介绍
      • 7.1.2 注意细节
    • 7.2 用户登录和注销
      • 7.2.1基本介绍
      • 7.2.2使用细节
  • 第8章Linux实操篇-用户管理
    • 8.1基本介绍
    • 8.2添加用户
      • 8.2.1基本语法
      • 8.2.2应用案例
      • 8.2.3细节说明
    • 8.3指定/修改密码
      • 8.3.1基本语法
      • 8.3.2应用案例
    • 8.4删除用户
      • 8.4.1基本语法
      • 8.4.2应用案例
      • 8.4.3细节说明
    • 8.5 查询用户信息指令
      • 8.5.1基本语法
      • 8.5.2应用实例
      • 8.5.3细节说明
    • 8.6切换用户
      • 8.6.1介绍
      • 8.6.2基本语法
      • 8.6.3应用实例
      • 8.6.4细节说明
    • 8.7 查看当前用户/登录用户
      • 8.7.1基本语法
    • 8.8用户组
      • 8.8.1介绍
      • 8.8.2新增组
      • 8.8.3删除组
      • 8.8.4增加用户时直接加上组
      • 8.8.5修改用户的组
    • 8.9用户和组相关文件
      • 8.9.1/etc/passwd文件
      • 8.9.2/etc/shadow文件
      • 8.9.3/etc/group文件
  • 第9章Linux实操篇-实用指令
    • 9.1 指定运行级别
      • 9.1.1基本介绍
      • 9.1.2应用实例
      • 9.1.3CentOS7 后运行级别说明
    • 9.2找回root密码
      • 9.2.1面试题
      • 9.2.2课堂练习
    • 9.3帮助指令
      • 9.3.1 man获得帮助信息
      • 9.3.2help指令
      • 9.3.3应用实例
      • 9.3.4百度帮助更直接
    • 9.4 文件目录类
      • 9.4.1 pwd指令
      • 9.4.2 ls指令
      • 9.4.3 cd指令
      • 9.4.4 mkdir指令
      • 9.4.5rmdir指令
      • 9.4.6touch指令
      • 9.4.7 cp指令
      • 9.4.8 rm指令
      • 9.4.9 mv指令
      • 9.4.10 cat指令
      • 9.4.11 more指令
      • 9.4.12 less指令
      • 9.4.13 echo指令
      • 9.4.14 head指令
      • 9.4.15 tail指令
      • 9.4.16 >指令和>>指令
      • 9.4.17 ln指令
      • 9.4.18 history指令
    • 9.5 实践日期类
      • 9.5.1date 指令-显示当前日期
      • 9.5.2 date指令-设置日期
      • 9.5.3 cal指令
    • 9.6 搜索查找类
      • 9.6.1 find指令
      • 9.6.2 locate指令
      • 9.6.3 grep 指令和管道符号|
    • 9.7压缩和解压类
      • 9.7.1 gzip/gunzip 指令
      • 9.7.2 zip/unzip指令
      • 9.7.3tar指令

第6章Linux实操篇-Vi和Vim编辑器

6.1 vi和vim的基本介绍

Linux系统会内置vi文本编辑器
Vim具有程序编辑的能力,可以看做是Vi的增强版本,可以主动的以字体颜色辨别语法的正确性,方便程序设计。
代码补完、编译及错误跳转等方便编程的功能特别丰富,在程序员中被广泛使用。

在这里插入图片描述

6.2 vi和常用的三种模式

6.2.1正常模式

以vim打开一个档案就直接进入一般模式了(这是默认的模式)。在这个模式中, 你可以使用「. 上下左右」按键来
移动光标,你可以使用[删除字符」或「删除整行」来处理档案内容,也可以使用 [复制、粘贴」来处理你的文件数

6.2.2 插入模式

按下i,I,o,O,a, A, r,R等任何一个字母之后才会进入编辑模式,一般来说按i即可。

6.2.3命令行模式

输入esc再输入:在这个模式当中,可 以提供你相关指令,完成读取、存盘、替换、离开vim、显示行号等的动作则是在此模式中达成的!

6.3 vi和vim基本使用

使用vim 开发一个Hello.java程序,保存.步骤说明和演示
在这里插入图片描述
在XShell中操作,输入

vim Hello.java

回车后进入正常模式
在这里插入图片描述
输入i进入插入模式
在这里插入图片描述
在插入模式中输入java语句
在这里插入图片描述
先输入esc,退出插入模式,再输入冒号进入命令行模式
在这里插入图片描述
先输入: 切换到命令行,接着输入wq保存并退出
在这里插入图片描述
此时已经存储了Hello.java文件
在这里插入图片描述
我们再次编辑的话,直接输入
vim H[Tab键自动补全]
在这里插入图片描述
进入后,输入i进入插入模式,结尾加感叹号
在这里插入图片描述
按Esc退出插入模式
在这里插入图片描述
最后按Caps lock(大写) ZZ
也可以实现保存并且退出。

再看看Linux中,该文件出现了
在这里插入图片描述

6.4各种模式的相互切换

在这里插入图片描述

6.5 vi和vim快捷键

6.5.1 快捷键使用练习

  1. 拷贝当前行yy,拷贝当前行向下的5行5yy, 并粘贴(输入p)
    (一般模式下输入)
    在这里插入图片描述
    在这里插入图片描述

  2. 正常模式下删除当前行 dd, 删除当前行向下的5行 5dd
    在这里插入图片描述
    在这里插入图片描述

  3. 在文件中查找某个单词[命令行下/关键字,回车 查找,输入n就是查找下一个]
    在这里插入图片描述
    在这里插入图片描述

  4. 设置文件的行号, 取消文件的行号[命令行下:set nu 和:set nonu]
    在这里插入图片描述

  5. 编辑/etc/profile 文件,在一般模式下, 使用快捷键到该文档的最末行[G]和最首行[gg]
    在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

  1. 在一个文件中输入"hello" ,在一般模式下,然后又撤销这个动作u。
    在这里插入图片描述
    在这里插入图片描述

  2. 编辑
    /etc/profile文件,在一般模式下,并将光标移动到,输入 20,再输入shift+g
    在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

  1. 更多的看整理的文档
  2. 快捷键的键盘对应图

在这里插入图片描述

6.6 vi和vim课堂练习

  1. 看使用vim/vi编写一个Hello.java
  2. 把老师课堂讲的各种快捷键自己玩一把即可

第7章Linux实操篇-开机、重启和用户登录注销

7.1 关机&重启命令

7.1.1基本介绍

  1. shutdown -h now 立该进行关机
  2. shudown -h 1 “hello, 1分钟后会关机了”
  3. shutdown -r now 现在重新启动计算机
  4. halt 关机,作用和上面一样.
  5. reboot 现在重新启动计算机
  6. sync 把内存的数据同步到磁盘.

7.1.2 注意细节

  1. 不管是重启系统还是关闭系统,首先要运行sync命令,把内存中的数据写到磁盘中。
  2. 目前的shutdown/reboot/halt 等命令均已经在关机前进行了sync ,老韩提醒: 小心驶得万年船。

在这里插入图片描述

7.2 用户登录和注销

7.2.1基本介绍

  1. 登录时尽量少用root帐号登录,因为它是系统管理员,最大的权限,避免操作失误。可以利用普通用户登录,
    登录后再用”su - 用户名’命令来切换成系统管理员身份。(在XShell中操作)
    在这里插入图片描述

su只能获得root的执行权限,不能获得环境变量
su -是切换到root并获得root的环境变量及执行权限。
在这里插入图片描述

  1. 在提示符下输入logout即可注销用户。
    su指令,再logout无法注销。
    在这里插入图片描述
    su - 指令,再logout可以注销。
    在这里插入图片描述
    在上面的基础上再logout就退出系统了。

7.2.2使用细节

  1. logout 注销指令在图形运行级别无效(Linux的命令行中logout指令无效),在运行级别3下有效。
  2. 运行级别这个概念, 后面给大家介绍。

第8章Linux实操篇-用户管理

8.1基本介绍

Linux系统是-一个多用户多任务的操作系统,任何一个要使用系统资源的用户,都必须首先向系统管理员申请一个账号,然后以这个账号的身份进入系统。
在这里插入图片描述
查看所有用户

cd /home

在这里插入图片描述

8.2添加用户

8.2.1基本语法

useradd 用户名

添加一个用户米兰

useradd milan

多了一个用户
在这里插入图片描述

8.2.2应用案例

案例1:添加一个用户milan, 默认该用户的家目录在/home/milan

8.2.3细节说明

  1. 当创建用户成功后,会自动的创建和用户同名的家目录。
    2)也可以通过 useradd -d 指定目录新的用户名, 给新创建的用户指定家目录。

比如在home/test目录下,创建用户king,并且指定家目录

useradd -d/home test king

在这里插入图片描述

8.3指定/修改密码

8.3.1基本语法

passwd 用户名

8.3.2应用案例

给milan指定密码 passwd milan

比如给milan设置的密码也是milan,实际工作中建议密码设置的复杂一些。

passwd milan milan

在这里插入图片描述
尝试用新改的密码登录milan,发现成功了
在这里插入图片描述

补充,显示当前用户所在的目录pwd。

pwd

在这里插入图片描述

8.4删除用户

8.4.1基本语法

userdel 用户名

8.4.2应用案例

  1. 删除用户milan, 但是要保留家目录,userdel milan
    在这里插入图片描述
    想用milan登录,就不允许登录了

  2. 删除用户以及用户主目录,比如tom, userdel -r tom

创建一个新用户lucy,然后删除lucy

userdel -r lucy

在这里插入图片描述
想用lucy登录,就不允许登录了

8.4.3细节说明

是否保留家目录的讨论?一般情况下, 我们建议保留

8.5 查询用户信息指令

8.5.1基本语法

id 用户名

8.5.2应用实例

案例:请查询root信息
#id root

在这里插入图片描述
在这里插入图片描述

8.5.3细节说明

当用户不存在时,返回无此用户
在这里插入图片描述

8.6切换用户

8.6.1介绍

在操作Linux 中,如果当前用户的权限不够,可以通过su - 指令,切换到高权限用户,比如root。

8.6.2基本语法

su - 切换用户名

8.6.3应用实例

创建一个用户jack,,指定密码,然后切换到jack

8.6.4细节说明

  1. 从权限高的用户切换到权限低的用户,不需要输入密码,反之需要。
    在这里插入图片描述

  2. 当需要返回到原来用户时,使用exit、logout指令。
    在这里插入图片描述

8.7 查看当前用户/登录用户

8.7.1基本语法

whoami/who am I
在这里插入图片描述

注意:该指令只显示你登录的用户,如果中途切换用户,也是显示登录的用户而不是切换后的用户
在这里插入图片描述

8.8用户组

8.8.1介绍

类似于角色,系统可以对有共性/权限的多个用户进行统一的管理。
在这里插入图片描述

8.8.2新增组

指令:
groupadd组名
案例演示

注意clear指令可以清理指令

clear

在这里插入图片描述
如果创建用户没有指定组名称,会自动创建组,组名和用户名相同,比如刚才新建的用户king
在这里插入图片描述

8.8.3删除组

指令(基本语法): groupdel 组名
案例演示
在这里插入图片描述

8.8.4增加用户时直接加上组

  1. 增加用户时直接加上组
  2. 指令(基本语法): useradd - g用户组用户名
  3. 增加一个用户zwj,直接将他指定到wudang
  4. groupadd wudang
  5. useradd -g wudang zwj
    在这里插入图片描述

8.8.5修改用户的组

指令(基本语法): usermod -g 用户组 用户名

  • 案例演示
    创建一个组mojiao
    把zwj放入到 mojiao
    指令: usermod -g mojiao zwj

在这里插入图片描述

8.9用户和组相关文件

8.9.1/etc/passwd文件

用户(user) 的配置文件,记录用户的各种信息。
每行的含义:用户名:口令:用户标识号:组标识号:注释性描述:主目录:登录Shell。
在这里插入图片描述
查询不同种类的shell
切换目录bin
查询以sh结尾的文件

cd /bin
ls -l *sh

在这里插入图片描述

用vim打开

vim /etc/passwd

在这里插入图片描述

8.9.2/etc/shadow文件

口令的配置文件
每行的含义:登录名:加密口令:最后一次修改时间:最小时间间隔:最大时间间隔:警告时间:不活动时间:失效时间:标志。

vim /etc/shadow

在这里插入图片描述
给zwj加上密码后再看看,产生了加密方式
在这里插入图片描述

8.9.3/etc/group文件

组(group)的配置文件,记录Linux包含的组的信息
每行含义:组名:口令:组标识号:组内用户列表。

vim /etc/group

在这里插入图片描述

第9章Linux实操篇-实用指令

9.1 指定运行级别

9.1.1基本介绍

运行级别说明:
0:关机
1:单用户[找回丢失密码]
2:多用户状态没有网络服务
3:多用户状态有网络服务
4:系统未使用保留给用户
5:图形界面
6:系统重启
常用运行级别是3和5,也可以指定默认运行级别,后面演示

9.1.2应用实例

命令: init [0123456]应用案例:通过 init来切换不同的运行级别,比如从5切换到3 ,然后关机。

比如目前的级别是5,图形界面,在Linux命令终端中输入

init 3

在这里插入图片描述
在这里插入图片描述
而输入init 6 就是重启了

init 6

在这里插入图片描述
重启相当于reboot指令

9.1.3CentOS7 后运行级别说明

在centos7以前,/etc/inittab 文件中
进行了简化,如下:
multi-user.target: analogous to runlevel 3
graphical.target: analogous to runlevel 5
#To view current default target, run:
systemctl get-default
#To set a default target, run:
systemctl set-default TARGET.target

输入指令,查看当前系统的运行级别(XShell)

systemctl get -default

在这里插入图片描述
现在想切换成运行级别3

systemctl set-default mult-usr.target

如下:
在这里插入图片描述

之后再查看一下当前运行级别
在这里插入图片描述
这时候如果输入reboot指令重启的话,再开机就会进入运行级别3
在这里插入图片描述

9.2找回root密码

9.2.1面试题

如何找回root密码

9.2.2课堂练习

课堂练习:

  1. 假设root密码忘记了,请问如何找回密码(CentOS7之后的)首先,启动系统,进入开机界面,在界面中按e进入编辑界面,如图
    在这里插入图片描述
    输入e后进入编辑模式
    在这里插入图片描述

进入编辑界面后,实用键盘上的上下键把光标往下移动,找到以“Linux16”开头内容所在的行数如图,在行的最后输入:

init=/bin/sh

在这里插入图片描述
接着输入完成后,直接按快捷键 ctrl+x进入单用户模式
接着,在光标闪烁的位置中输入

mount -o remount,rw /

注意,各个单词间都有空格,完成后按键盘的回车键(Enter)如图
在这里插入图片描述

在新的一行最后面输入passwd,完成后按键盘的回车键(Enter)。输入密码,然后再次确认密码即可密码修改成功后,会显示passwd的样式,说明密码修改成功。
在这里插入图片描述
接着,在光标闪烁的位置中(最后一行)输入

touch /.autorelabel

在这里插入图片描述

注意touch与/之间有一个空格,完成后按键盘的回车(Enter)

继续在光标闪烁的位置中,输入

exec /sbin/init

在这里插入图片描述

注意:exec与/之间有一个空格,完成后按键盘的回车键(Enter),等待系统自动修改密码(这个过程很长,耐心等待)完成后,系统会自动重启,新的密码生效了

之后用新的密码登录即可。

课堂练习:
2) 设置运行级别,linux 运行后,直接进入到命令行终端
见上述操作

9.3帮助指令

9.3.1 man获得帮助信息

基本语法: man [命令或配置文件] (功能描述:获得帮助信息)
案例:查看ls命令的帮助信息 man ls

输入(XShell)

man ls

在这里插入图片描述
未展示完的页按空格即可。
在这里插入图片描述

在linux下,隐藏文件是以.开头

我们看到文档中-a是展示隐藏文件,那么我们操作一下。首先按q退出帮助文档,在命令行中输入如下指令:

ls -a

在这里插入图片描述
我们再看一下帮助信息中-l指的是单列输出,我们再尝试一下。
首先输入q退出帮助文档,然后在命令行中输入

ls -l

在这里插入图片描述

帮助文档中,选项可以组合使用

比如ls -al, 比如 Is -al /root

我们实验一下输入

ls -al

在这里插入图片描述
输入

ls -al /root

以单列形式展示root目录下的文件
在这里插入图片描述

帮助指令的顺序可以修改,比如上面的指令

ls -al /root

可以修改成

ls -la /root

9.3.2help指令

基本语法:help命令(功能描述:获得shell内置命令的帮助信息)

9.3.3应用实例

案例:查看cd命令的帮助信息

help cd

在这里插入图片描述

9.3.4百度帮助更直接

如果英语不太好的,也可以直接百度靠谱。

9.4 文件目录类

9.4.1 pwd指令

基本语法: pwd (功能描述:显示当前工作目录的绝对路径)
应用实例:案例:显示当前工作目录的绝对路径

模拟:访问a.txt,当前路径是/home
在这里插入图片描述

我们新建用户tom

useradd tom

切换目录,使当前目录到home/tom

cd /home/tom

在这里插入图片描述

用vim打开a.txt,输入

Hello,Tom

在这里插入图片描述
此时退出vim之后,在命令行中输入

pwd

显示如下:
在这里插入图片描述
可见pwd是显示当前工作目录的绝对路径

9.4.2 ls指令

基本语法: ls [选项] [目录或是文件]

  • 常用选项
    -a: 显示当前目录所有的文件和目录,包括隐藏的。
    -l:.以列表的方式显示信息。
  • 应用实例
    案例:查看当前目录的所有内容信息

9.4.3 cd指令

  • 基本语法: cd [参数] (功能描述: 切换到指定目录)
    理解:绝对路径和相对路径

在这里插入图片描述
cd ~ 或者cd : 回到自己的家目录,
比如你是root,cd ~ 就会回到 /root 目录
在这里插入图片描述
在这里插入图片描述

cd… :回到当前目录的上一级目录
在这里插入图片描述

  • 应用实例
    案例1:使用绝对路径切换到root目录,cd /root
cd /root

在这里插入图片描述

案例2:使用相对路径到/root目录,比如在/home/tom,

解析:当前目录结构:
/→root→home→tom→a.txt
现在在tom的位置,往上2层就到了/的位置,想去root,那么还需要再进入root,综上,命令行如下:

cd ../../root

在这里插入图片描述

案例3:表示回到当前目录的上一级目录,cd …

cd..

在这里插入图片描述
案例4:回到家目录,cd ~

cd ~

在这里插入图片描述

9.4.4 mkdir指令

➢mkdir 指令用于创建目录
基本语法: mkdir [选项] 要创建的目录
➢常用选项
-p :创建多级目录
➢应用实例
案例1:创建一个目录/home/dog(相当于创建了1个文件夹)

mkdir /home/dog

在这里插入图片描述

案例2:创建多级目录/home/animal/tiger(相当于创建了2个文件夹)

mkdir -p /home/animal/tiger

在这里插入图片描述
rmdir指令

9.4.5rmdir指令

➢基本语法
rmdir[选项]要删除的空目录
➢应用实例
案例:删除一个目录/home/dog

rmdir /home/dog

在这里插入图片描述

➢使用细节rmdir删除的是空目录,如果目录下有内容时无法删除的。
提示:如果需要删除非空目录,需要使用rm-rf 要删除的目录比如:
删除的时候要谨慎

rm - rf /home/animal

在这里插入图片描述

9.4.6touch指令

➢touch指令创建空文件
➢基本语法
touch文件名称
➢应用实例 .
案例:在/home目录下,创建一个空文件hello.txt
在这里插入图片描述

9.4.7 cp指令

cp指令拷贝文件到指定目录
在这里插入图片描述
➢基本语法
cp [选项] source dest
➢常用选项
-r :递归复制整个文件夹
➢应用实例
案例1:将/home/hello.txt拷贝到/home/bbb 目录下

cp hello.txt bbb/

在这里插入图片描述

案例2:递归复制整个文件夹,举例,比如将home/bbb 整个目录,拷贝到/opt

cp -r /home/bbb /opt

在这里插入图片描述

➢使用细节
强制覆盖不提示的方法: \cp, \cp -r /home/bbb /opt
在这里插入图片描述

9.4.8 rm指令

说明: rm指令移除文件目录

  • 基本语法
    rm[选项]要 删除的文件或目录
  • 常用选项
    -r :递归删除整个文件夹
    -f: 强制删除不提示
  • 应用实例
    案例1:将/home/hello.txt删除, rm /home/hello.txt
rm /home/hello.txt

在这里插入图片描述

案例2:递归删除整个文件夹/home/bbb,rm -rf /home/bb [删除整个文件夹,不提示]

rm -rf /home/bb

在这里插入图片描述

  • 使用细节
    强制删除不提示的方法:带上-f 参数即可

9.4.9 mv指令

mv
移动文件与目录或重命名

  • 基本语法
    mv oldNameFile newNameFile (功能描述:重命名)
    mv /temp/movefile /targetFolder (功能描述:移动文件)
  • 应用实例
    案例1:将/home/cat.txt 文件重命名为pig.txt
mv /home/cat.txt /home/pig.txt

在这里插入图片描述

案例2:将/home/pig.txt文件移动(剪切)到/root 目录下

mv /home/pig.txt  /root/

在这里插入图片描述

案例3:移动整个目录,比如将/opt/bbb 移动到/home目录下试试

mv /opt/bbb /home/

在这里插入图片描述

案例4:移动并重命名,将/root/bbb/hello2.txt移动到/root目录下,并且重命名为hello3.txt

mv hello2.txt /root/hello3.txt

在这里插入图片描述

9.4.10 cat指令

cat 查看文件内容,更加安全(不能修改)

  • 基本语法
    cat [选项] 要查看的文件
  • 常用选项
    -n :显示行号
  • 应用实例
    案例1: /etc/profile 文件内容, 并显示行号
cat -n /etc/profile

在这里插入图片描述

  • 使用细节
    cat只能浏览文件,而不能修改文件,为了浏览方便,一般会带上管道命令| more
    cat -n /etc/profile | more [进行交互]
cat /etc/profile|more

输入管道命令,相当于和系统有个交互
空格:下一页
回车:下一行
在这里插入图片描述

9.4.11 more指令

more指令是一个基于VI编辑器的文本过滤器,它以全屏幕的方式按页显示文本文件的内容。more 指令中内置了若干快捷键(交互的指令),详见操作说明

  • 基本语法
    more要查看的文件

  • 操作说明,如图

在这里插入图片描述

  • 应用实例
    案例:采用more查看文件 /etc/profile
more /etc/profile

在这里插入图片描述

9.4.12 less指令

less指令用来分屏查看文件内容,它的功能与more指令类似,但是比more指令更加强大,支持各种显示终端。less
指令在显示文件内容时,并不是一次将整个文件加载之后才显示,而是根据显示需要加载内容,对于显示大型文件具有
较高的效率。

  • 基本语法 .
    less要查看的文件

操作说明
下面表格中,空白键 = 空格键
在这里插入图片描述

  • 应用实例
    案例:采用less查看一个大文件,文件/opt/杂文.txt
    less /opt/杂文.txt
less /etc/profile

9.4.13 echo指令

echo输出内容到控制台

  • 基本语法
    echo [选项] [输出内容]
  • 应用实例
    案例:使用echo指令输出环境变量,比如输出$PATH $HOSTNAME,
echo $PATH 
echo $HOSTNAME

在这里插入图片描述

案例:使用echo指令输出hello ,world!

echo "hello ,world"

在这里插入图片描述

9.4.14 head指令

head用于显示文件的开头部分内容,默认情况下head指令显示文件的前10行内容

  • 基本语法 .
    head文件(功能描述: 查看文件头10行内容)
    head -n 5文件
    (功能描述:查看文件头5行内容,5可以是任意行数)
  • 应用实例
    案例:查看/etc/profile的前面5行代码
head -n 5 /etc/profile

在这里插入图片描述
不写 -n 数字默认是前10行

head /etc/profile

在这里插入图片描述

9.4.15 tail指令

tail用于输出文件中尾部的内容,默认情况下tail 指令显示文件的后10行内容。

  • 基本语法
  1. tail 文件 (功能描述:查看文件尾10行内容)
  2. tail -n5 文件(功能描述:查看文件尾5行内容,5可以是任意行数)
  3. tail -f 文件 (功能描述:实时追踪该文档的所有更新)
  • 应用实例
    案例1:查看/etc/profile最后5行的代码
tail -n 5 /etc/profile

在这里插入图片描述

案例2:实时监控mydate.txt, 看看到文件有变化时,是否看到,实时的追加hello,world

在XShell中执行如下命令

tail -f /home/mydate.txt

在这里插入图片描述

这里想要退出监控的话,实用指令Ctrl+c

登录Linux中,用命令行追加

echo "hello" > /home/mydate.txt

在这里插入图片描述

9.4.16 >指令和>>指令

输出重定向和>>追加

  • 基本语法
  1. ls -l>文件
    (功能描述:列表的内容入文件a.txt中(覆盖写) )
  2. Is -al>>文件
    (功能描述:列表的内容追加到文件aa.txt的末尾)
  3. cat 文件1>文件2
    (功能描述:将文件1的内容覆盖到文件2)
  4. echo “内容”>>文件(追加)
  • 应用实例
    案例1:将/home目录下的文件列表写入到/home/info.txt 中,覆盖写入。
    ls -l /home > /home/info.txt [如果 info.txt没有,则会创建]
ls -l /home > /home/info.txt

在这里插入图片描述
那如果我们再追加一段指令会发生什么呢?

echo "hello">info.txt

因为是覆盖写,所以会被hello覆盖
在这里插入图片描述

案例2:将当前日历信息追加到/home/mycal 文件中
指令为:

cal >> /home/mycal

在这里插入图片描述
那如果我们继续执行下一个指令会发生什么呢

cal >> /home/mycal

因为>>是追加,所以会再生成一个日历
在这里插入图片描述

9.4.17 ln指令

软链接也称为符号链接,类似于windows里的快捷方式,主要存放了链接其他文件的路径

  • 基本语法
    In -s [原文件或目录] [软链接名] (功能描述: 给原文件创建一个软链接)
  • 应用实例
    案例1:在/home目录下创建一个软连接myroot, 连接到/root 目录 ln -s /root /home/myroot
    在这里插入图片描述
    输入指令
cd myroot/

在这里插入图片描述
展示当前列表

ll

发现myroot中就是root的内容,那下面如果我不想要这个软连接了呢?

案例2:删除软连接myroot

rm /home/myroot

在这里插入图片描述

  • 细节说明
    当我们使用pwd指令查看目录时,仍然看到的是软链接所在目录。

9.4.18 history指令

查看已经执行过历史命令,也可以执行历史指令

  • 基本语法 .
    history ( 功能描述:查看已经执行过历史命令)
  • 应用实例
    案例1:显示所有的历史命令
history

在这里插入图片描述

案例2:显示最近使用过的10个指令。

history 10

在这里插入图片描述

案例3:执行历史编号为5的指令

!5

在这里插入图片描述

9.5 实践日期类

9.5.1date 指令-显示当前日期

  • 基本语法
  1. date ( 功能描述:显示当前时间)
  2. date +%Y (功能描述:显示当前年份)
  3. date +%m (功能描述:显示当前月份)
  4. date +%d (功能描述:显示当前是哪一:天)
  5. date “+%Y- %m- %d %H:%M:%S” (功能描述:显示年月日时分秒)
  • 应用实例
    案例1:显示当前时间信息
date

在这里插入图片描述

案例2:显示当前时间年月日

date "+%Y- %m-%d"

在这里插入图片描述
案例3:显示当前时间年月日时分秒

date "+%Y-%m-%d %H:%M:%S"

在这里插入图片描述

9.5.2 date指令-设置日期

  • 基本语法
    date -s 字符串时间
  • 应用实例
    案例1:设置系统当前时间,比 如设置成2020-11-03 20:02:10
date -s “2020-11-03 20:02:10”

在这里插入图片描述

9.5.3 cal指令

查看日历指令cal

  • 基本语法
    cal [选项] (功能描述: 不加选项,显示本月日历)
  • 应用实例
    案例1:显示当前日历cal
cal

在这里插入图片描述

案例2:显示2020年日历: cal 2020

cal 2020

在这里插入图片描述

9.6 搜索查找类

9.6.1 find指令

find指令将从指定目录向下递归地遍历其各个子目录,将满足条件的文件或者目录显示在终端。

  • 基本语法
    find [搜索 范围] [选 项]
  • 选项说明

在这里插入图片描述

  • 应用实例
    案例1:按文件名:根据名称查找/home目录下的hello3.txt文件
find /home -name hello3.txt

在这里插入图片描述

案例2:按拥有者:查找/opt目录下,用户名称为nobody 的文件

find /opt -user nobody

在这里插入图片描述

案例3:查找整个linux系统下大于200M的文件

+n 大于
-n 小于
n 等于
单位有 k,M,G

find / -size +200M

在这里插入图片描述
我们验证一下是否有200M多的文件

cd /run/media/root/CentOS\ 7\ x86_64/LiveOS/

展示文件详细信息

ls -l

展示文件详细信息,以直观数据展示

ls -lh

在这里插入图片描述

9.6.2 locate指令

locate指令可以快速定位文件路径。locate指令利用事先建立的系统中所有文件名称及路径的locate数据库实现快速定位给定的文件。Locate指令无需遍历整个文件系统,查询速度较快。为了保证查询结果的准确度,管理员必须定期更新locate时刻。

  • 基本语法
    locate搜索文件
  • 特别说明
    由于locate指令基于数据库进行查询,所以第一次运行前, 必须使用updatedb指令创建locate 数据库。
  • 应用实例
    案例1:请使用locate指令快速定位hello.txt 文件所在目录

先执行

updatedb

再定位

locate hello3.txt

在这里插入图片描述

which指令,可以查看某个指令在哪个目录下,比如ls 指令在哪个目录

which ls

在这里插入图片描述

9.6.3 grep 指令和管道符号|

grep过滤查找,管道符,“|”,表示将前一个命令的处理结果输出传递给后面的命令处理。
在这里插入图片描述
比如以上示意图就是,检索hello3.txt中“hello”的段落

cat hello3.txt |grep "hello"

在这里插入图片描述

  • 基本语法
    grep [选项] 查找内容源文件
  • 常用选项
    在这里插入图片描述
  • 应用实例
    案例1:请在hello.txt文件中,查找"yes" 所在行, 并且显示行号
    写法1:
cat /root/hello.txt| grep -n "yes"

在这里插入图片描述

写法2:

grep -n "yes" /root/hello.txt

在这里插入图片描述

9.7压缩和解压类

9.7.1 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

在这里插入图片描述

9.7.2 zip/unzip指令

zip用于压缩文件,unzip 用于解压的,这个在项目打包发布中很有用的
在这里插入图片描述
V基本语法
zip [选项] XXX.zip将要 压缩的内容(功能描述:压缩文件和目录的命令)
unzip [选项] XXX.zip ( 功能描述:解压缩文件)

  • zip常用选项
    -r: 递归压缩,即压缩目录
  • unzip的常用选项
    -d<目录> :指定解压后文件的存放目录
  • 应用实例
    案例1:将/home下的所有文件/文件夹进行压缩成myhome.zip
zip-r myhome.zip/home/

在这里插入图片描述

案例2:将myhome.zip 解压到/opt/tmp 目录下

mkdir /opt/tmp
unzip -d /opt/tmp /home/myhome.zip

在这里插入图片描述

9.7.3tar指令

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 目录下
(1) mkdir /opt/tmp2
(2) tar -zxvf /home/myhome.tar.gz -C /opt/tmp2

在这里插入图片描述

相关内容

热门资讯

喜欢穿一身黑的男生性格(喜欢穿... 今天百科达人给各位分享喜欢穿一身黑的男生性格的知识,其中也会对喜欢穿一身黑衣服的男人人好相处吗进行解...
发春是什么意思(思春和发春是什... 本篇文章极速百科给大家谈谈发春是什么意思,以及思春和发春是什么意思对应的知识点,希望对各位有所帮助,...
网络用语zl是什么意思(zl是... 今天给各位分享网络用语zl是什么意思的知识,其中也会对zl是啥意思是什么网络用语进行解释,如果能碰巧...
为什么酷狗音乐自己唱的歌不能下... 本篇文章极速百科小编给大家谈谈为什么酷狗音乐自己唱的歌不能下载到本地?,以及为什么酷狗下载的歌曲不是...
华为下载未安装的文件去哪找(华... 今天百科达人给各位分享华为下载未安装的文件去哪找的知识,其中也会对华为下载未安装的文件去哪找到进行解...
怎么往应用助手里添加应用(应用... 今天百科达人给各位分享怎么往应用助手里添加应用的知识,其中也会对应用助手怎么添加微信进行解释,如果能...
家里可以做假山养金鱼吗(假山能... 今天百科达人给各位分享家里可以做假山养金鱼吗的知识,其中也会对假山能放鱼缸里吗进行解释,如果能碰巧解...
四分五裂是什么生肖什么动物(四... 本篇文章极速百科小编给大家谈谈四分五裂是什么生肖什么动物,以及四分五裂打一生肖是什么对应的知识点,希...
一帆风顺二龙腾飞三阳开泰祝福语... 本篇文章极速百科给大家谈谈一帆风顺二龙腾飞三阳开泰祝福语,以及一帆风顺二龙腾飞三阳开泰祝福语结婚对应...
美团联名卡审核成功待激活(美团... 今天百科达人给各位分享美团联名卡审核成功待激活的知识,其中也会对美团联名卡审核未通过进行解释,如果能...