第二章Linux操作语法1

news/2024/5/18 18:24:06/文章来源:https://blog.csdn.net/qq_50985215/article/details/129372463

文章目录

  • vi和vim
      • 常用的三种模式
      • vi和vim快捷键
  • Linux开机,重启
  • 用户管理
    • 用户信息查询管理
      • who和whoami
    • 用户组信息查询管理
    • 用户和组的相关文件
  • 实用指令集合
    • 运行级别
    • 帮助指令
      • man
      • help
    • 文件管理类
      • pwd命令
      • ls命令
      • cd命令
      • mkdir命令
      • rmdir命令
      • rm命令
      • touch命令
      • cp指令
      • mv指令
    • 文件查看类
      • cat命令
      • less命令
      • more命令
      • head 指令
      • tail命令
    • 文件输入输出类
      • echo 指令
      • >指令
      • >>指令
      • <指令
    • 软硬链接
      • ln 指令
      • 硬链接
    • history 指令
    • 时间日期类
      • date 指令—显示时间
      • date 指令—设置日期
      • cal 指令
    • 管道
    • 搜索查找类
      • find指令
      • locate 指令
      • which 指令
      • grep指令
    • 压缩解压类
      • gzip/gunzip 指令
      • zip/unzip 指令
      • tar 指令

vi和vim

常用的三种模式

  • 一般模式,在这个模式可以使用上下左右按键进行移动光标,也可以使用删除字符或者删除整行进行处理档案内容,也可以通过复制粘贴来处理文件数据
    • 以vim打开一个文档就直接进入到一般模式
    • 按esc是从编辑模式回到一般模式
  • 按下 i o a r 等任何一个字母就能进入编辑模式,一般来说按i
  • 命令行模式 在这个模式可以提供你相关指令,完成读取,存盘,替换,离开vim,显示行号等动作
    • 输入esc 然后输入:

vi和vim快捷键

  • vim 文件xxx(包括文件类型)
    • 没有文件则创建
    • 有该文件就进入修改

命令行模式输入

  • :wq(保存退出)
  • :q(退出)
  • :q!(强制退出,不保存)
  • 查找关键字 / + 所需的字段 n键用来切换
  • :set nu 显示行号 :set nonu 关闭显示行号

一般模式下输入

  • 拷贝当前行 yy 然后按p表示粘贴当前行

    • 拷贝当前行向下五行 5yyp
  • 删除当前行 dd

    • 删除当前行向下五行 5dd
  • 快速到达文档的最后一行和第一行 G gg

  • 撤销操作 一般模式下 按 u

  • 光标跳转到 指定行数 输入行号 + shift +g

Linux开机,重启

  • shutdown -h now 立刻进行关机

  • shutdown -h 1 “hello,1分钟后会关机了”

  • shutdown -r now 现在重新启动计算机

  • halt 关机,作用和上面的shotdown -h now 一样

  • reboot 现在重启

  • sync 内存同步到磁盘

不论重启还是关闭系统,首先要运行sync指令,同步内存至磁盘

目前的shutdown/reboot/halt命令均已经在关机前进行了sync 建议还是先运行sync命令

用户管理

Linux系统是一个多用户多任务的操作系统,任何一个要使用系统资源的用户,都必须首先向系统管理员申请一个账号,然后通过这个账号的身份

所在首先进入Linux我们要知道的就是我是谁

用户信息查询管理

who和whoami

  • who表示当前登录系统的所有用户
  • whoami 我们是以哪个用户登录上了的

用户创建

  • useradd xx 创建一个用户名为xx的用户
    • 在我们的/home 目录下会创建一个与用户名相同的目录,称作这个用户的家目录
    • 也可以通过useradd -d [指定目录] [用户名] ,给该新创建的用户指定家目录的名称

用户的登录和退出

  • su 用户名 为切换用户
    • 一般root的权限太大,我们一般登录普通用户,需要用到root的权限,才使用su 来切换用户
    • 权限高的用户切换到权限低的不需要输入密码,反之需要
  • logout在图形级界面运行级别是无效的 在运行级别3下有效
    • 关于运行级别在后面会介绍
    • 比如我们的先登录的lsc,然后通过su进行切换到root,我们再输入logout,就会退到我们的lsc
    • 返回到原来的用户 exit/logout

指定/修改用户密码

  • passwd 用户名
    • 如果不写用户名,则是给当前登录的用户修改密码

删除用户

  • userdel 用户名
    • 删除用户也是一件大事,所以肯定是需要root权限(对应的命令的程序是在/user/sbin下),也肯定不能出现自己删自己的情况
    • userdel -r 用户名 操作慎重 这样删除会把对应用户家目录所有内容删除 不加-r是不会删除家目录

查询用户信息

  • id 用户名

用户组信息查询管理

用户组类似于角色,系统可以对有共性/权限的多个用户进行统一的管理

新增组

  • groupadd 组名

删除组

  • groupdel 组名

添加用户时指定组

  • useradd -g 用户组 用户名
  • 我们在添加一个用户的时候,如果没有对应的组,那么会自动生成一个与用户名称相同的组,并加入

修改用户的组

  • usermod -g 用户组 用户名

用户和组的相关文件

/etc/passwd 文件

用户的配置文件

  • 用户名:口令:用户标识号:组标识号:注释性描述:主目录:登录shell

/etc/shadow 文件

口令配置文件

  • 登录名:加密口令:最后一次修改时间:最小时间间隔:最大时间间隔:警告时间:不活动时间:失效时间标志

/etc/group 文件

组配置文件

  • 组名:口令:组标志号:组内用户列表

实用指令集合

运行级别

基本介绍

  • 0:关机
  • 1:单用户【找回丢失密码】
  • 2:多用户状态没有网络服务
  • 3:多用户状态有网络服务
  • 4:系统未使用保留给用户
  • 5:图形界面
  • 6:系统重启

切换运行级别的指令

  • init 运行级别

常用运行级别为3和5,也可以指定默认运行级别

在centos7之前,/etc/inittab文件中指定

简化为

  • multi-user.target:analogous to runlevel 3
  • graphical.target:analagous to runlevel 5

查看当前运行级别

  • systemctl get-default

修改当前运行级别

  • systemctl set-default TARGET.target

帮助指令

man

man 命令或配置文件

  • Linux的命令有很多参数,我们不可能全记住,我们可以通过查看联机手册获取帮助。访问Linux手册页的命令是man
  • 比如man ls 就是查看ls的帮助信息

help

help 命令

  • 获取shell内置命令的帮助信息
    • 所谓 Shell 内建命令,就是由 Bash 自身提供的命令,而不是文件系统中的某个可执行文件。
    • 例如,用于进入或者切换目录的 cd 命令,虽然我们一直在使用它,但如果不加以注意很难意识到它与普通命令的性质是不一样的:该命令并不是某个外部文件,只要在 Shell 中你就一定可以运行这个命令
    • 可以使用 type 来确定一个命令是否是内建命令
  • 比如help cd

文件管理类

因为我们的Linux大多时候都是命令行,所以我们必须知道我在哪?我的周围有什么

pwd命令

  • 查看当前工作目录的完整路径(绝对路径)
  • 命令格式:pwd [选项]
  • 常用参数:一般情况下不带任何参数
    • 如果目录是链接时:pwd -P显示出实际路径,而非使用连接(link)路径

ls命令

命令格式:ls [选项] [目录名]

  • 列出目标目录中所有的子目录和文件

    • 如果ls指定目录,那么默认就会显示指定目录下的文件和目录,也就是知道我的周围有什么的功能
  • 通过ls命令不仅可以查看linux文件夹包含的文件而且可以查看文件权限(包括目录、文件夹、文件权限)、查看目录信息等等

常用参数:

  • -a 列出目录下的所有文件,包括以 . 开头的隐含文件。
    • linux中隐藏文件是以.开头的
  • -l 列出文件的详细信息。
  • h h表示文件大小用k,m之类表示
  • 选项可以组合使用,没有顺序的要求
    • 可以写成 ls -la,等价于 ls -l -a

cd命令

  • 作用:切换当前目录至指定目录
  • 命令格式:cd [目录名]
  • 路径可以是绝对路径也可以是相对路径
  • …表示父目录,.表示当前目录
    • cd… 回到当前目录的上一级目录
  • cd ~ 表示回到当前登录用户的家目录
    • 未切换目录时显示的是波浪号(~):表示当前位于主目录中(为用户目录,不是根目录)
    • 比如root的家目录是/root
    • lsc的家目录是/home/lsc

mkdir命令

  • mkdir [选项] 目录名
  • 功能就是创建一个目录,不是普通文件

常见选项

  • -p 可以是一个路径名称。此时若路径中的某些目录尚不存在,加上此选项后,系统将自动建立 好那些尚不存在的目录,即一次可以建立多个目录;
    • 因为mkdir默认是只创建一个目录

rmdir命令

  • rmdir [选项] 要删除的目录
    • 这个命令默认要删除的目录必须是空目录,如果目录下有内容是无法删除的

rm命令

  • 作用:删除一个或多个文件目录
  • 命令格式:rm [选项] 文件1 文件2…

常见选项:

  • -f 即使文件属性为只读(即写保护),亦直接删除,也就是强制删除不提醒
  • -i 删除前逐一询问确认(交互式)
  • -r 删除目录及其下所有文件
    • 如果没有使用-r选项,则rm不会删除目录。如果使用rm来删除文件,通常仍可以将该文件恢复原状

注意

rm是一个危险的命令,使用的时候要特别当心,否则整个系统就会毁在这个命令。比如在/(根目录)下执行rm -rf *

  • 所以,我们在执行rm之前最好先确认一下在哪个目录,到底要删除什么东西,操作时保持高度清醒的头脑

touch命令

  • 功能:
    • 1如果一个文件不存在,创建一个新文件(普通文件),文件内容是空的
    • 2如果一个文件存在,修改这个文件的last modified(上一次的修改时间/最后修改时间)
  • 语法:touch [选项] 文件

cp指令

  • cp指令将文件拷贝到指定目录
  • 基本语法:cp [选项] source dest
  • \cp 表示强制覆盖不提示

常用选项

  • -r递归复制整个文件夹
    • 我们把一个目录下的内容拷贝过去,肯定就需要-r

mv指令

  • mv命令是move的缩写,可以用来移动文件或者将文件改名(move (rename) files),是Linux系统下常用的命 令,经常用来备份文件或者目录。
  • 两种用法
    • 重命名:mv oldNameFile newNameFile(两个文件在同一个目录)
    • 移动:mv 文件 新目录(且这个目录是存在的)移动一个文件或目录时,指令最后一个参数肯定是一个路径

常用选项:

  • -f :force 强制的意思,如果目标文件已经存在,不会询问而直接覆盖
  • -i :若目标文件 (destination) 已经存在时,就会询问是否覆盖!

文件查看类

cat命令

  • cat主要有三大功能

    • 一次显示整个文件:cat filename
    • 从键盘创建一个文件:cat > filename 只能创建新文件,不能编辑已有文件
      • 是输出重定向
      • cat oldname > newName 就可以实现我们的cp的功能
    • 将几个文件合并为一个文件:cat file1 file2 > file
  • 命令格式:cat [选项] [文件]…

常见命令参数:

  • -n:对输出的所有行编号,由1开始对所有输出的行数编号
  • -b:对非空输出行编号
  • -s 不输出多行空行

cat命令是一次性显示整个文件内容(不能编辑),一般用于查看不会实时变更的文件内容,而tail命令一般用于查看会实时变更的文件内容,如日志文件等

less命令

  • 功能:分屏查看文件内容,功能与more类似,但比more更加强大,支持各种显示终端。less指令在显示文件内容时,并不是一次将整个文件加载之后才显示,而是根据显示需要加载内容,对于大型文件具有更高的效率。
    • less 工具也是对文件或其它输出进行分页显示的工具,应该说是linux正统查看文件内容的工具,功能极其强大。
    • less 的用法比起 more 更加的有弹性。在 more 的时候,我们并没有办法向前面翻, 只能往后面看
    • 但若使用了 less 时,就可以使用 [pageup][pagedown] 等按键的功能来往前往后翻页翻看文件,更容易用来查看一个文件的内容!
    • 除此之外,在 less 里头可以拥有更多的搜索功能,不止可以向下搜,也可以向上搜。
      • /字符串 向下查询字符串的功能 n向下查找 N向上查找
    • q 离开less这个程序
  • 基本语法 less 要查看的文件

more命令

  • 语法:more [选项][文件]
  • 功能:more命令,功能类似 cat

注意:

  • 在使用more的过程中,只能使用回车键进行向下查看,

  • 同时也可以使用/内容来搜索并查看相关的内容。

head 指令

  • 功能: head 用来显示档案的开头至标准输出中,默认情况下head 指令显示文件的前10 行内容
  • 语法: head [选项] 文件名

选项:

  • -n<行数> 表示显示多少行

tail命令

  • 功能:tail 命令从指定点开始将文件写到标准输出,默认情况下tail 指令显示文件的前10 行内容。
  • 语法: tail [选项] 文件名

常见选项:

  • -f 循环读取
    • -f选项可以方便的查阅正在改变的日志文件,tail - f filename会把filename里最尾部的内容显示在屏幕上,并且不断刷新,使你看到最新的文件内容.
    • 我们使用tail -f 这个命令的程序会一直执行,ctrl+c退出
  • -n<行数> 显示行数

文件输入输出类

echo 指令

  • echo 输出内容到控制台
  • 基本语法:echo [选项] [输出内容]

应用实例

  • 使用echo 指令输出环境变量, 比如输出 $PATH $HOSTNAME, echo $HOSTNAME 输出本机名称
  • 使用echo 指令输出hello,world!

>指令

  • 输出重定向

  • 功能:本来应该写入到显示器的内容,修改进程的标准输出

    • 会清空原始文件的内容,进行重新写入。
    • 如果文件不存在,就会自动创建文件并写入
  • 语法:> 文件

某些场景

  • ls -l >文件 将当前所在目录下的详细文件信息写入到指定文件中,以覆盖的模式
  • ls -al >>文件
  • cat 文件1 > 文件2
  • echo “内容”>> 文件(追加)

>>指令

  • 追加输出重定向
  • 语法:>> 文件
  • 功能:将本来应该写入到显示器的内容,把它追加到文件的后面
    • 不会清空原始文件中的内容,会在原来文件内容的末尾进行追加
    • 如果文件不存在,就会自动创建

<指令

  • 语法:< 文件
  • 功能:把本来应该从键盘文件中读取数据的方式,修改进程的标准输入

软硬链接

ln 指令

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

    • 因为在实际开发的时候,可能某些文件在多处使用,我们不可能在每个地方都拷一遍,利用这种软链接来实现文件的共享
  • 基本语法:ln -s [原文件或目录] [软链接名] (功能描述:给原文件创建一个软链接)

实例

  • 在/home目录下创建一个软连接 myroot,链接到/root目录
    • ln -s /root/ /home/myroot
  • 删除对应的软链接 rm myroot

image-20230305221913781

  • Linux的软链接类似与我们的Windows的快捷模式
  • 比如我们cd /home/myroot 使用pwd查看当前目录,仍然看见的是我们的软链接所在的目录

硬链接

在硬链接创建的过程中,并不是数据被复制粘贴,而是系统构造了一个新的指针来访问原本数据。所以无论操作哪个都是在源数据上操作,自然会映射到另一个文件上去;新文件和旧文件删了哪个都不会影响到数据本身,这是因为仍有指针指向这段数据,只有全删了才会导致原本的数据段地址被判断为废弃而被释放。

在linux中,新的硬连接和旧的硬连接在不同的目录位置指向同一个node,他们之间不存在说哪个和哪个是副本关系,当新的硬连接生成,就不存在谁是“源文件”了,指向同一个node的硬链接之间不存在直接的交互关系。

操作系统知识

基于索引结点的共享方式——硬链接

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-tyfY19j2-1678113302294)(C:\Users\lsc07\Desktop\学习资料\19typora笔记\13Linux\第二章Linux操作语法1.assets\b8d8928c961319dc29a340ae8d6ab145.png)]

  • 我们的索引结点:因为查找文件只需要文件名,因此把文件名之外的其他信息放到索引结点中,这样目录项就只需要包含文件名和索引结点指针,可以让我们的相同大小的目录表装入更多的目录项
  • 让我们的让不同的目录项指向同一个文件的索引结点,实现文件的共享
  • 当我们的count==0的时候,才会由系统负责删除文件

history 指令

  • 查看已经执行过历史命令,也可以执行历史指令
  • 基本语法history

应用实例

案例1: 显示所有的历史命令

  • history

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

  • history 10

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

  • !5

时间日期类

date 指令—显示时间

基本语法

  • date (功能描述:显示当前时间)
  • date +%Y (功能描述:显示当前年份)
  • date +%m(功能描述:显示当前月份)
  • date +%d (功能描述:显示当前是哪一天)
  • date “+%Y-%m-%d %H:%M:%S”(功能描述:显示年月日时分秒)

应用实例

案例1: 显示当前时间信息

  • date

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

  • date “+%Y-%m-%d”

案例3: 显示当前时间年月日时分秒

  • date “+%Y-%m-%d %H:%M:%S”

date 指令—设置日期

  • 基本语法 : date -s 字符串时间

cal 指令

  • 功能:查看日历指令cal

  • 基本语法:cal [选项] (功能描述:不加选项,显示本月日历)

应用实例

  • 案例1: 显示当前日历cal
  • 案例2: 显示2020 年日历: cal 2020

管道

进程之间通信的方式

  • 1信号量
  • 2管道
  • 3信号
  • 4共享内存
  • 5文件
  • 6网络

在这里插入图片描述

  • Linux中使用|来表示使用管道

实例

获得hello.txt的78910四行内容

  • head -10 hello.txt | tail -4

搜索查找类

find指令

  • find 指令将从指定目录向下递归地遍历其各个子目录,将满足条件的文件或者目录显示在终端。
  • 基本语法:find [搜索范围] [选项]
  • Linux下find命令提供了相当多的查找条件,功能很强大。由于find具有强大的功能,所以它的选项也很多,其中大部分选项都值得我们花时间来了解一下。
    在运行一个非常消耗资源的find命令时,很多人都倾向于把它放在后台执行,因为遍历一个大的文件系 统可能会花费很长的时间(这里是指30G字节以上的文件系统)

选项说明

  • -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

locate 指令

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

特别说明

  • 由于locate 指令基于数据库进行查询,所以第一次运行前,必须使用updatedb 指令创建locate 数据库。

which 指令

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

grep指令

  • grep表示过滤查找 在文件中搜索字符串,将找到的行打印出来。一般都是与管道符"|"配合使用,表示将前一个命令的处理结果输出传递给后面的命令处理
  • 基础语法 grep [选项] 查找内容 源文件

常用选项

  • -n 显示匹配行及行号
  • -i 忽视字母大小写
  • -v :反向选择,亦即显示出没有 ‘搜寻字符串’ 内容的那一行

应用实例

案例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

zip/unzip 指令

  • zip 用于压缩文件, unzip 用于解压的,这个在项目打包发布中很有用的

  • 基本语法

    • zip [选项] XXX.zip 将要压缩的内容(功能描述:压缩文件和目录的命令)

    • unzip [选项] XXX.zip (功能描述:解压缩文件)

zip 常用选项

  • -r:递归压缩,即压缩目录

unzip 的常用选项

  • -d<目录> :指定解压后文件的存放目录

实例

将/home下的所有文件进行压缩成myhome.zip

  • zip -r myhome.zip /home/

将myhome.zip解压到/opt/tmp目录下

  • unzip -d /opt/tmp myhome.zip

tar 指令

  • tar 指令是打包指令,最后打包后的文件是.tar.gz 的文件

  • 基本语法: tar [选项] XXX.tar.gz 打包的内容(功能描述:打包目录,压缩后的文件格式 .tar.gz)

选项说明

  • -c或–create 建立新的备份文件 也就是产生.tar文件
  • -C<目的目录> 切换到指定的目录。
  • -v 显示详细信息
  • -f 指定压缩后的文件名
  • -z通过gzip指令处理备份文件
  • -x 解包.tar文件

应用实例
案例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 myhome.tar.gz -C /opt/tmp2

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.luyixian.cn/news_show_78312.aspx

如若内容造成侵权/违法违规/事实不符,请联系dt猫网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

10.单点登录原理及JWT实现

单点登录原理及JWT实现 一、单点登录效果 首先我们看通过一个具体的案例来加深对单点登录的理解。案例地址&#xff1a;https://gitee.com/xuxueli0323/xxl-sso?_fromgitee_search 把案例代码直接导入到IDEA中 然后分别修改下server和samples中的配置信息 在host文件中配置 …

【Opencv项目实战】图像的像素值反转

文章目录一、项目思路二、算法详解2.1、获取图像信息2.2、新建模板2.3、图像通道顺序三、项目实战&#xff1a;彩图的像素值反转&#xff08;方法一&#xff09;四、项目实战&#xff1a;彩图的像素值反转&#xff08;方法二&#xff09;五、项目实战&#xff1a;彩图转换为灰图…

Spark Catalyst

Spark Catalyst逻辑计划逻辑计划解析逻辑计划优化Catalyst 规则优化过程物理计划Spark PlanJoinSelection生成 Physical PlanEnsureRequirementsSpark SQL 端到端的优化流程&#xff1a; Catalyst 优化器 : 包含逻辑优化/物理优化Tungsten : Spark SQL的优化过程 : 逻辑计划 …

pytorch安装的超级详细教程(没有之一)

一、发展历程 &#xff08;简单介绍&#xff09; (15年)caffe --> (16年)tensorflow1.x --> (17年)keras --> (18年)Tensorflow2.x --> (19年)pytorch。 面向gihub开源项目编程。 向下支持比较好&#xff0c;各个版本之间支持比较好&#xff0c;兼容性强。 版本…

自动驾驶介绍系列 ———— 看门狗

文章目录硬件看门狗软件看门狗差异分析延申窗口看门狗硬件看门狗 硬件看门狗的本质上是一个定时器电路。通常存在一个输入&#xff0c;输入到MCU的RST端。在正常工作状态下&#xff0c;MCU每隔固定时间间隔会输出一个信号给RST端&#xff0c;实现对看门狗端清零。如果在指定的时…

全网最全之接口测试【加密解密攻防完整版】实战教程详解

看视频讲的更详细&#xff1a;https://www.bilibili.com/video/BV1zr4y1E7V5/? 一、对称加密 对称加密算法是共享密钥加密算法&#xff0c;在加密解密过程中&#xff0c;使用的密钥只有一个。发送和接收双方事先都知道加密的密钥&#xff0c;均使用这个密钥对数据进行加密和解…

JAVA开发运维(nginx工作原理)

nginx源码目录结构&#xff1a; . ├── auto 自动检测系统环境以及编译相关的脚本 │ ├── cc 关于编译器相关的编译选项的检测脚本 │ ├── lib nginx编译所需要的一些库的检测脚本 │ ├── os 与平台相关的一些系统参数…

【3.6】链表、操作系统CPU是如何执行程序的、Redis数据类型及其应用

链表 题目题型203. 移除链表元素 - 力扣&#xff08;LeetCode&#xff09;辅助头节点解决移出head问题707. 设计链表 - 力扣&#xff08;LeetCode&#xff09;辅助头节点206. 反转链表 - 力扣&#xff08;LeetCode&#xff09;迭代 / 递归19. 删除链表的倒数第 N 个结点 - 力扣…

web餐饮开源程序

简介 一款专门针对餐饮行业而开发桌面应用程序 技术 借助Panuon.UI.Silver控件库&#xff0c;开发的一款餐饮软件。 运行环境&#xff1a;.NETFramework,Versionv4.8。 运行数据库&#xff1a;MySql。 ORM框架&#xff1a;SqlSugar。 第三方插件&#xff1a;Panuon.UI.Silv…

网上订餐管理系统的设计与实现

技术&#xff1a;Java、JSP等摘要&#xff1a;随着信息技术的广泛使用&#xff0c;电子商务对于提高管理和服务水平发挥着关键的作用。越来越多的商家开始着手于电子商务建设。电子商务的发展为人们的生活提供了极大的便利&#xff0c;也成为现实社会到网络社会的真实体现。当今…

来吧!接受Kotlin 协程--线程池的7个灵魂拷问

前言 之前有分析过协程里的线程池的原理&#xff1a;Kotlin 协程之线程池探索之旅(与Java线程池PK)&#xff0c;当时偏重于整体原理&#xff0c;对于细节之处并没有过多的着墨&#xff0c;后来在实际的使用过程中遇到了些问题&#xff0c;也引发了一些思考&#xff0c;故记录之…

网络协议丨从物理层到MAC层

我们都知道TCP/IP协议其中一层&#xff0c;就是物理层。物理层其实很好理解&#xff0c;就是物理攻击的物理。我们使用电脑上网时的端口、网线这些都属于物理层&#xff0c;没有端口没有路由你没有办法上网。网线的头我们叫水晶头&#xff0c;也是物理层的一份子。如果你的面前…

深入理解java虚拟机精华总结:性能监控和故障处理工具、类加载机制

深入理解java虚拟机精华总结&#xff1a;性能监控和故障处理工具、类加载机制性能监控和故障处理工具、类加载机制jpsjstatjinfojmapjhatjstackVisualVM类加载机制类加载的时机类加载的过程加载验证准备解析初始化类加载器类与类加载器双亲委派模型破坏双亲委派模型往期内容&am…

X264简介-Android使用(二)

X264简介-Android使用&#xff08;二&#xff09; 4、Ubuntu上安装ffmpeg&#xff1a; 检查更新本地软件包&#xff08;如果未更新&#xff0c;reboot Vmware&#xff09;&#xff1a; sudo apt update sudo apt upgrade官网下载的source文件安装&#xff1a; http://ffmpe…

做数据分析有前景吗?

当然有前景的。 每个行业都有发展前景&#xff0c;只是看你自身的技能情况或者关系人脉、软实力方面是否到位&#xff0c;不同的行业要求不一样。作为数据分析领域而言&#xff0c;属于IT行业&#xff0c;看的是你的专业技能&#xff1b;只要你技能过硬&#xff0c;就能在行业…

面向对象设计模式:行为型模式之状态模式

文章目录一、引入二、状态模式2.1 Intent 意图2.2 Applicability 适用性2.3 类图2.4 状态模式与策略模式的对比2.5 状态模式实例&#xff1a;糖果机2.6 状态模式实例&#xff1a;骑自行车升降档一、引入 State Diagram 状态图&#xff1a; A state diagram is a type of diagr…

OceanBase 第六期技术征文活动|小鱼还能“更快”吗?你来试试

2022 年 8 月 10 日&#xff0c;我们在 OceanBase 年度发布会上正式发布了 OceanBase 4.0&#xff08;代号&#xff1a;小鱼&#xff09;&#xff0c;并在现场展区尝试做了一些有趣的事情&#xff0c;“小鱼”可以单机版部署在个人 PC 以及树莓派&#xff0c;让来到现场的开发者…

网络编程 socket 编程(一)

1. C/S 架构 C/S 架构即客户端/服务端架构&#xff0c;B/S 架构&#xff08;浏览器与服务端&#xff09;也是 C/S 架构的一种。 C/S 架构与 socket 的关系&#xff1a;学习 socket 可以完成 C/S 架构的开发。 2. osi 七层 一个完整的计算机系统由硬件、操作系统以及应用软件…

C++基础——Ubuntu下编写C++环境配置总结(C++基本简介、Ubuntu环境配置、编写简单C++例程)

【系列专栏】&#xff1a;博主结合工作实践输出的&#xff0c;解决实际问题的专栏&#xff0c;朋友们看过来&#xff01; 《QT开发实战》 《嵌入式通用开发实战》 《从0到1学习嵌入式Linux开发》 《Android开发实战》 《实用硬件方案设计》 长期持续带来更多案例与技术文章分享…

xxl-job启用https访问

一、准备证书 1.进入想要生成证书的目录 2.在路径中输入cmd,点击回车 &#xff08;1&#xff09; &#xff08;2&#xff09; 3.输入命令keytool -genkeypair -alias "boot" -keyalg "RSA" -keystore "seek.keystore" 4.输入信息&#xff0c…