当前位置: 首页 > news >正文

Vim编辑器使用入门

目录

一、Vim 编辑器基础操作

二、Vim 编辑器进阶操作

三、Vim 编辑器高级操作

四、Vim 编辑器文件操作

五、Vim 编辑器文件管理

六、Vim 编辑器进阶技巧

七、Vim 编辑器增强功能


Vim的三种工作模式

一、Vim 编辑器基础操作

1.移动光标 - 光标的移动控制

移动光标有两种按键,一种是键盘的方向键,另一种是h j k l四个按键

2.Vim 进入和退出 - 进入和退出 Vim 编辑器

2.1 vim的进入,在终端输入vim 即可进入vim编辑器

2.2 vim的退出有两种,一种是保存操作并退出,一种是不保存操作并退出。

在ESC后正常模式下,分别输入以下快捷键实现退出

操作方式快捷键描述
保存并退出:wq 或 ZZ保存当前文件并退出 Vim 编辑器
不保存而退出:q!不保存当前文件的修改并强制退出 Vim 编辑器

3.文本的编辑-删除 - 删除文本操作

文本删除操作步骤

1.请将光标移动到本节中下面标记有 一的那一行。

2.为了修正输入错误,请将光标移至准备刑除的字符的位置处。

3.然后按下 x 键将错误字符制除掉

删除命令快捷键描述
xx删除光标所在位置的一个字符

 4.文本编辑-插入 - 插入文本操作

操作步骤

1.请将光标移动到本节中下面标记有的第一行
2.为了使得第一行内容雷同于第二行,请将光标移至文本第一个准备插入字符的位置。
3.然后按下 i键,接着输入必要的文本字符。
每个错误修正完毕后,请按下 <ESC>键返回正常模式重复步骤2至步骤4以便修正句子

插入命令快捷键描述
ii在光标前插入文本
II在当前行的行首插入文本

 5.文本编辑-添加 - 添加文本操作

操作步骤

1.光标放在那一行的某个字符上。
2.按 A键输入必要的添加内容。
3.文本添加完毕后,按 <ESC> 键回到正常模式
4.移动光标到下面第二个标记有 的一行。重复步骤2和步骤3以改正这个句子

添加命令快捷键描述
aa在光标后添加文本
AA在当前行的行尾添加文本

第一讲小结 - 对 Vim 编辑器基础操作进行总结回顾。


二、Vim 编辑器进阶操作

1.删除命令 - 基本删除命令的使用

操作步骤

1.请按下 <ESC>键确保您处于正常模式
2.请将光标移动到本节中下面标记有>的那一行。
3.请将光标移至准备要删除的单词的起始处。
4.接着输入 dw 删除掉该单词

步骤编号操作命令操作描述
1dw删除从光标所在位置到下一个单词开头的文本(包括)

2. 更多类删除命令 - 扩展的删除命令选项

操作步骤:

  1. 请按下 <ESC> 键确保您处于正常模式。
  2. 请将光标移动到本节中下面标记有 > 的那一行。
  3. 请将光标移至准备要删除的单词或字符的起始处。
  4. 输入相应的命令进行删除操作。

操作列表:

操作命令操作描述
x删除光标所在位置的字符
X删除光标前一位置的字符
dd删除整行文本
D删除光标到行末之间的所有内容
:1,$d删除整个文档的所有文本(输入该命令后,请按 Enter 键确认操作)
u撤销上一次执行的删除操作

3. 关于命令和对象 - 命令和操作对象的关系

操作步骤:

  1. 请按下 <ESC> 键确保您处于正常模式。
  2. 请将光标移动到本节中下面标记有 > 的那一行。
  3. 请将光标移至想要操作的对象所在处。
  4. 输入对应的命令进行操作。

操作列表:

操作命令操作描述
diw删除光标所在处的单词
da(删除括号内的所有内容
ciw更改光标所在处的单词
daw删除光标所在处的单词以及其后面的空格
cw更改光标所在处的单词以及其后面的空格

4. 使用计数指定工作 - 使用计数来指定删除的数量或范围

操作步骤:

  1. 请按下 <ESC> 键确保您处于正常模式。
  2. 请将光标移动到本节中下面标记有 > 的那一行。
  3. 请将光标移至想要操作的起始处。
  4. 输入计数数字,再输入对应的命令进行操作。

操作列表:

操作命令操作描述
2dw删除光标所在位置的单词以及其后面的单词,共计2个
3dd删除光标所在行及其下面的连续两行,共计3行

5. 使用计数以删除更多 - 进一步利用计数来执行更多删除操作

操作步骤:

  1. 请按下 <ESC> 键确保您处于正常模式。
  2. 请将光标移动到本节中下面标记有 > 的那一行。
  3. 请将光标移至想要操作的起始处。
  4. 输入计数数字,再输入对应的命令进行操作。

操作列表:

操作命令操作描述
d2w删除光标所在位置的单词以及其后面的单词,共计2个
d3d删除光标所在行及其下面的连续两行,共计3行

6. 操作整行 - 对整行进行操作

操作步骤:

  1. 请按下 <ESC> 键确保您处于正常模式。
  2. 请将光标移动到本节中下面标记有 > 的那一行。
  3. 将光标移至任意一行(对整行进行操作)。
  4. 输入对应的命令进行操作。

操作列表:

操作命令操作描述
dd删除当前行
cc更改当前行(等同于 dd + i
yy复制当前行
p在光标下方粘贴被复制或剪切的内容
u撤销上一次操作

7. 撤销类命令 - 撤销操作及撤销历史记录

操作步骤:

  1. 进入Vim编辑器,并确保处于正常模式。
  2. 按下 u 键,执行撤销操作。这将撤销上一次的编辑操作,恢复到之前的状态。
  3. 如果您想一次性撤销多个编辑操作,可以按住 Ctrl + r 键来重做(反撤销)动作。

操作列表:

操作命令操作描述
u撤销上一次操作
Ctrl+r恢复被撤销的操作(反撤销)

第二讲小结 - 对 Vim 编辑器进阶操作进行总结回顾。


三、Vim 编辑器高级操作

1. 置入类命令 - 将文本插入到指定位置

操作步骤:

  1. 请按下 <ESC> 键确保您处于正常模式。
  2. 将光标移动到想要插入文本的位置。
  3. 输入 i 进入插入模式。
  4. 输入您想要插入的文本内容。
  5. 按下 <ESC> 键退出插入模式。

操作列表:

操作命令操作描述
i在光标前插入文本
a在光标后插入文本
I在行首插入文本
A在行末插入文本
o在当前行下方插入行
O在当前行上方插入行

2. 替换类命令 - 替换文本内容

操作步骤:

  1. 请按下 <ESC> 键确保您处于正常模式。
  2. 将光标移动到要替换的文本的起始位置。
  3. 输入 r 进入替换模式。
  4. 输入您要替换成的新字符。
  5. 按下 <ESC> 键退出替换模式。
操作命令操作描述
r替换光标所在处的字符
R连续替换光标所在位置字符

3. 更改类命令 - 修改文本内容

操作步骤:

  1. 请按下 <ESC> 键确保您处于正常模式。

  2. 将光标移动到要修改的文本的起始位置。

  3. 按下下列命令之一来执行修改操作:

    • cw:更改光标所在处的单词。
    • caw:更改光标所在处的单词以及其后面的空格。
    • ciw:更改光标所在处的单词,不包括其后面的空格。
    • c$:更改从光标位置到行末的所有内容。
  4. 输入您要替换成的新文本。

  5. 按下 <ESC> 键退出修改模式。

操作命令操作描述
cw更改光标所在处的单词
caw更改光标所在处的单词以及其后面的空格
ciw更改光标所在处的单词,不包括其后面的空格
c$更改从光标位置到行末的所有内容

4. 使用 c 更改更多 - 进一步利用 "c" 操作符来执行更多修改操作

操作步骤:

  1. 请按下 <ESC> 键确保您处于正常模式。
  2. 将光标移动到要修改的文本的起始位置。
  3. 输入计数数字,指定要修改的字符数量。
  4. 输入 c 进入更改模式。
  5. 输入您要替换成的新文本。
  6. 按下 <ESC> 键退出修改模式。
操作命令操作描述
c2w更改光标所在位置和下一个单词,共 2 个
c3j删除光标所在行及以下连续两行,共计 3 行

第三讲小结 - 对 Vim 编辑器高级操作进行总结回顾。


四、Vim 编辑器文件操作

1. 定位及文件状态 - 定位光标和查看文件状态

操作步骤:

  1. 请按下 <ESC> 键确保您处于正常模式。

  2. 输入 : 进入命令行模式。

  3. 输入以下命令之一来执行相应的操作:

    • set number:显示行号。
    • set nonumber:隐藏行号。
    • set cursorline:高亮当前行。
    • set nocursorline:取消高亮当前行。
    • set cursorcolumn:高亮当前列。
    • set nocursorcolumn:取消高亮当前列。
  4. 按下 <ENTER> 键执行命令。

操作列表:

命令作用
set number显示行号
set nonumber隐藏行号
set cursorline高亮当前行
set nocursorline取消高亮当前行
set cursorcolumn高亮当前列
set nocursorcolumn取消高亮当前列
gg跳转至文档首部(第一行)
G跳转至文档尾部(最后一行)
:n跳转至第 n 行
Ctrl+G显示光标位置、文件名、文件状态等信息
u撤销上一个操作
Ctrl+R重做上一个操作,恢复被撤销的更改
.重复执行上一个编辑操作

2. 搜索类命令 - 在文件中执行搜索操作

操作步骤:

  1. 请按下 <ESC> 键确保您处于正常模式。
  2. 输入 / 进入搜索模式。
  3. 输入您要搜索的文本内容。
  4. 按下 <ENTER> 键开始搜索。
  5. 使用 n 命令查找下一个匹配项,使用 N 命令查找上一个匹配项。

操作列表:

命令作用
/text向后查找 "text"
?text向前查找 "text"
n查找下一个匹配项
N查找上一个匹配项
:nohlsearch取消当前的高亮显示

3. 配对括号寻找 - 查找和操作配对的括号

操作步骤:

  1. 请按下 <ESC> 键确保您处于正常模式。
  2. 将光标移动到任意一个括号上。
  3. 输入 % 命令执行查找和操作。
  4. 如果光标位于左括号上,则会跳转到右括号;如果光标位于右括号上,则会跳转到左括号。

操作列表:

命令作用
%查找和操作匹配的括号
(查找上一个句子的开头
)查找下一个句子的开头
{查找上一个段落的开头
}查找下一个段落的开头
[[查找上一个函数或代码块的开头
]]查找下一个函数或代码块的开头
[]查找和操作匹配括号,建议使用 % 命令

4. 替换命令 - 执行替换操作

操作步骤:

操作列表:

命令作用
:%s/old/new/g替换整个文件中的所有匹配项
:s/old/new/g替换当前行中的所有匹配项
:n,ms/old/new/g替换第 n 到第 m 行中的所有匹配项
:%s/old/new/gc替换整个文件中的所有匹配项,并询问用户
:s/old/new/gc替换当前行中的所有匹配项,并询问用户

  1. 请按下 <ESC> 键确保您处于正常模式。

  2. 输入 : 进入命令行模式。

  3. 输入以下命令之一,执行相应的替换操作:

    • :%s/old/new/g:替换整个文件中的所有匹配项。
    • :s/old/new/g:替换当前行中的所有匹配项。
    • :n,ms/old/new/g:替换第 n 到第 m 行中的所有匹配项。
    • :%s/old/new/gc:替换整个文件中的所有匹配项,并在每次替换时询问用户是否确认操作。
    • :s/old/new/gc:替换当前行中的所有匹配项,并在每次替换时询问用户是否确认操作。
  4. 按下 <ENTER> 键执行命令。

第四讲小结 - 对 Vim 编辑器文件操作进行总结回顾。


五、Vim 编辑器文件管理

1. 在 Vim 内部执行外部命令

操作步骤:

  1. 请按下 <ESC> 键确保您处于正常模式。
  2. 输入 : 进入命令行模式。
  3. 输入 ! 后面跟上您想要执行的外部命令,并按下 <ENTER> 键。

例如,要查看当前目录中的文件列表,可以执行以下命令:

:!ls

这将运行ls命令并显示结果。

2. 保存文件时的一些额外选项

在保存文件时,Vim提供了一些额外选项来进行更高级的操作。下面是一些常用的选项:

  1. :w:保存文件。如果文件不存在,则另存为。
  2. :w filename:将文件另存为指定的文件名。
  3. :w!:强制保存文件,即使文件只读或没有写权限。
  4. :saveas filename:将当前文件另存为指定的文件名,并切换到新文件。
  5. :wall:保存所有打开的窗口中的文件。
  6. :wnext:保存当前文件并跳转到下一个文件。
  7. :wprev:保存当前文件并跳转到上一个文件。

这些选项可以根据您的需求在保存文件时进行选择。

3. 执行有选择性的保存操作

要执行有选择性的保存操作,可以使用以下操作步骤:

例如,要只保存第10到20行的内容,可以执行以下命令:

:10,20w filename

这将保存第10到20行的内容到指定的文件名中。

4. 提取和合并不同文件的内容

要提取和合并不同文件的内容,可以使用以下操作步骤:

这样,您就可以从一个文件中提取内容,并将其合并到另一个文件中。

  1. 请按下 <ESC> 键确保您处于正常模式。
  2. 输入 : 进入命令行模式。
  3. 输入 w 命令来保存文件,然后在其后添加一个文件名或范围来指定要保存的内容。
  4. 使用 :e filename 命令打开第一个文件。
  5. 在文件中移动光标,选择要提取的内容。
  6. 按下 v 进入可视模式,并使用移动键选择要提取的文本块。
  7. 按下 y 复制选择的文本块。
  8. 切换到第二个文件,使用 :e filename 命令打开它。
  9. 在目标位置插入光标,并按下 p 将复制的内容粘贴到该位置。

六、Vim 编辑器进阶技巧

1. 打开类命令 - 打开其他文件或查看缓冲区列表

  1. 操作步骤:

  2. 进入Vim编辑器。
  3. 进入命令行模式,按下冒号键 :
  4. 输入相应的命令。
  5. 按下回车键执行命令。

操作表格:

操作命令
打开指定文件:e 文件名
重新加载当前文件:e!
查看缓冲区列表:ls
切换到下一个缓冲区:bnext
切换到上一个缓冲区:bprev

2. 附加类命令 - 附加到其他窗口或标签页

操作步骤:

  1. 进入Vim编辑器。
  2. 进入命令行模式,按下冒号键 :
  3. 输入相应的命令。
  4. 按下回车键执行命令。

操作表格:

操作命令
水平拆分新窗口:sp
垂直拆分新窗口:vsp
在新的标签页中打开文件:tabe 文件名

3. 另外一个置换类命令的版本 - 另一种方式的置换类命令

操作步骤:

  1. 进入Vim编辑器。
  2. 进入命令行模式,按下冒号键 :
  3. 输入相应的命令。
  4. 按下回车键执行命令。

操作表格:

操作命令
替换当前行中第一个匹配到的内容:s/旧内容/新内容
替换整个文件中所有匹配的内容:%s/旧内容/新内容/g
在替换之前提示确认并选择是否替换:s/旧内容/新内容/gc

4. 复制粘贴文本 - 复制和粘贴文本操作

操作步骤:

  1. 进入Vim编辑器。
  2. 将光标移动到要复制的文本上。
  3. 进入可视模式,按下 v 键。
  4. 使用移动键选择要复制的文本块。
  5. 按下 y 键复制选择的文本块。
  6. 将光标移动到要粘贴的位置。
  7. 按下 p 键将复制的内容粘贴到该位置。

5. 设置类命令的选项 - 配置和修改设置类命令的选项

操作步骤:

操作表格:

操作命令
将选项设置为指定的值:set 选项=值
禁用选项:set no选项
显示当前选项的值:set 选项?

  1. 进入Vim编辑器。
  2. 进入命令行模式,按下冒号键 :
  3. 输入相应的命令。
  4. 按下回车键执行命令。

第六讲小结 - 对 Vim 编辑器进阶技巧进行总结回顾。


七、Vim 编辑器增强功能

2. 创建启动脚本 - 编写并使用启动脚本

要创建和使用启动脚本来配置Vim编辑器的行为,您可以按照以下步骤操作:

您还可以在 ~/.vim/ 目录下创建其他启动脚本,例如 vim ~/.vim/plugin/myplugin.vim,这些启动脚本将在Vim启动时自动加载。

3. 补全功能 - 使用补全功能提高编辑效率

Vim编辑器提供了补全功能,可以帮助您快速输入和完成代码、路径等内容。要使用补全功能,请按照以下步骤操作:

补全功能可以根据当前文件类型和您的配置进行智能补全,提高编辑效率和准确性。

  1. 1. 获取帮助类信息 - 查找获取帮助相关信息

    在Vim编辑器中,您可以通过以下方式获取帮助信息:

  2. 输入命令 :help,然后按回车键,将打开Vim的帮助文档。您可以使用搜索功能查找特定的主题,例如 :help 搜索
  3. 若要获取有关特定命令或选项的帮助,请将光标放在该命令或选项上,然后按下 K 键(或者按住 Shift 键并双击鼠标左键)即可显示相关帮助。
  4. 在终端或命令提示符下,使用文本编辑器创建一个新文件,例如 vim ~/.vimrc
  5. 在该文件中编写Vim配置命令,例如设置选项、定义快捷键等。例如,如果要启用行号显示,可以添加 set number
  6. 保存并关闭文件。
  7. 重新启动Vim编辑器,您将看到应用了启动脚本中的配置。
  8. 在插入模式下,输入部分内容(例如函数名、文件路径等)。
  9. 按下 Ctrl + N(向后补全)或 Ctrl + P(向前补全)触发补全功能。如果有多个匹配项,可以继续按下相应的快捷键进行选择。
  10. 选中所需的补全项后,按下 Enter 键插入补全内容。

第七讲小结 - 对 Vim 编辑器增强功能进行总结回顾。


相关文章:

Vim编辑器使用入门

目录 一、Vim 编辑器基础操作 二、Vim 编辑器进阶操作 三、Vim 编辑器高级操作 四、Vim 编辑器文件操作 五、Vim 编辑器文件管理 六、Vim 编辑器进阶技巧 七、Vim 编辑器增强功能 Vim的三种工作模式 一、Vim 编辑器基础操作 1.移动光标 - 光标的移动控制 移动光标有两…...

早餐与风景

来吧&#xff0c;我用流水账描述下这一天。 时维九月&#xff0c;北京的早上有点冷&#xff0c;因为今天有个市场活动要去支撑&#xff0c;按照会议时间的要求&#xff0c;我需要在早上7点半就赶到会场&#xff0c;所以昨天晚上我加班到凌晨处理完了今天要给出去的材料&#xf…...

常用python代码串

记录新疆出差期间的一些代码 打开yaml文件python中的专有名词ctrlc 打开yaml文件 with open(/home/cyun/文档/cotton_ws/src/control/scripts/ControlParameter.yaml, r) as file:yaml_data yaml.load(file, Loaderyaml.FullLoader)后面发现像这种打开文件的最好是try一下 p…...

电脑桌面透明便签软件是哪个?

在现代快节奏的工作环境中&#xff0c;许多上班族都希望能够在电脑桌面上方便地记录工作资料、重要事项、工作流程等内容。为了解决这个问题&#xff0c;一款优秀的电脑桌面便签软件是必不可少的。在选择桌面便签软件时&#xff0c;许多用户也希望便签软件能够与电脑桌面壁纸相…...

Git创建干净分支,本地操作不依赖任何分支

clone远程项目: git clone gittest.git查看分支: git branch -a创建新分支: git checkout --orphan test, 返回Switched to a new branch test删除当前项目文件夹下所有文件: git rm -rf .提交变更: git commit -m "new branch for test"查看分支: git branch -a, 发…...

sqlmap tamper脚本编写

文章目录 tamper脚本是什么&#xff1f;指定tamper脚本运行sqlmap安全狗绕过tamper脚本 tamper脚本是什么&#xff1f; SQLMap 是一款SQL注入神器&#xff0c;可以通过tamper 对注入payload 进行编码和变形&#xff0c;以达到绕过某些限制的目的。但是有些时候&#xff0c;SQLM…...

5.5V-65V Vin同步降压控制器,具有线路前馈SCT82630DHKR

描述&#xff1a; SCT82630是一款65V电压模式控制同步降压控制器&#xff0c;具有线路前馈。40ns受控高压侧MOSFET的最小导通时间支持高转换比&#xff0c;实现从48V输入到低压轨的直接降压转换&#xff0c;降低了系统复杂性和解决方案成本。如果需要&#xff0c;在低至6V的输…...

YOLOv5、YOLOv8改进:Decoupled Head解耦头

目录 1.Decoupled Head介绍 2.Yolov5加入Decoupled_Detect 2.1 DecoupledHead加入common.py中&#xff1a; 2.2 Decoupled_Detect加入yolo.py中&#xff1a; 2.3修改yolov5s_decoupled.yaml 1.Decoupled Head介绍 Decoupled Head是一种图像分割任务中常用的网络结构&#…...

Prometheus+Grafana可视化监控【Redis状态】

文章目录 一、安装Docker二、安装Redis数据库(Docker容器方式)三、安装Prometheus四、安装Grafana五、Pronetheus和Grafana相关联六、安装redis_exporter七、Grafana添加Redis监控模板 一、安装Docker 注意&#xff1a;我这里使用之前写好脚本进行安装Docker&#xff0c;如果已…...

怒刷LeetCode的第6天(Java版)

目录 第一题 题目来源 题目内容 解决方法 方法一&#xff1a;哈希表 方法二&#xff1a;逐个判断字符 方法三&#xff1a;模拟减法 第二题 题目来源 题目内容 解决方法 方法一&#xff1a;水平扫描法 方法二&#xff1a;垂直扫描法 方法三&#xff1a;分治法 方…...

SSL双向认证-Nginx配置

SSL双向认证需要CA证书&#xff0c;开发过程可以利用自签CA证书进行调试验证。 自签CA证书生成过程&#xff1a;SSL双向认证-自签CA证书生成 Nginx配置适用于前端项目或前后端都通过Nginx转发的时候&#xff08;此时可不配置后端启用双向认证&#xff09; 1.Nginx配置&#…...

GO学习之 远程过程调用(RPC)

GO系列 1、GO学习之Hello World 2、GO学习之入门语法 3、GO学习之切片操作 4、GO学习之 Map 操作 5、GO学习之 结构体 操作 6、GO学习之 通道(Channel) 7、GO学习之 多线程(goroutine) 8、GO学习之 函数(Function) 9、GO学习之 接口(Interface) 10、GO学习之 网络通信(Net/Htt…...

八大排序(四)--------直接插入排序

本专栏内容为&#xff1a;八大排序汇总 通过本专栏的深入学习&#xff0c;你可以了解并掌握八大排序以及相关的排序算法。 &#x1f493;博主csdn个人主页&#xff1a;小小unicorn ⏩专栏分类&#xff1a;八大排序汇总 &#x1f69a;代码仓库&#xff1a;小小unicorn的代码仓库…...

MYSQL--存储引擎和日志管理

存储引擎&#xff1a; 一、存储引擎概念&#xff1a; MySQL中的数据用各种不同的技术存储在文件中&#xff0c;每一种技术都使用不同的存储机制、索引技巧、锁定水平并最终提供不同的功能和能力&#xff0c;这些不同的技术以及配套的功能在MySQL中称为存储引擎。存储引擎是My…...

VUE之更换背景颜色

1. 确定需求 在实现之前&#xff0c;首先需要明确需求&#xff0c;即用户可以通过某种方式更改页面背景颜色&#xff0c;所以我们需要提供一个可操作的控件来实现此功能。 2. 创建Vue组件 为了实现页面背景颜色更换功能&#xff0c;我们可以创建一个Vue组件。下面是一个简单…...

大型集团借力泛微搭建语言汇率时区统一、业务协同的国际化OA系统

国际化、全球化集团&#xff0c;业务遍布全世界&#xff0c;下属公司众多&#xff0c;集团对管理方式和企业文化塑造有着很高的要求。不少大型集团以数字化方式助力全球统一办公&#xff0c;深化企业统一管理。 面对大型集团全球化的管理诉求&#xff0c;数字化办公系统作为集…...

Quartz 建表语句SQL文件

SQL文件在jar里面&#xff0c;github下载 https://github.com/quartz-scheduler/quartz/releases/tag/v2.3.2 解压&#xff0c;sql文件路径&#xff1a;quartz-core\src\main\resources\org\quartz\impl\jdbcjobstore tables_mysql_innodb.sql # # In your Quartz propertie…...

nginx SseEmitter 长连接

1、问题还原&#xff1a; 在做openai机器人时&#xff0c;后台使用 SseEmitterEventSource 实现流式获取数据&#xff0c;前端通过 EventSourcePolyfill 函数接收后端的数据&#xff0c;在页面流式输出到页面&#xff0c;做成逐字打稿的效果。本地测试后&#xff0c;可以正常获…...

若依cloud -【 100 ~ 】

100 分布式日志介绍 | RuoYi 分布式日志就相当于把日志存储在不同的设备上面。比如若依项目中有ruoyi-modules-file、ruoyi-modules-gen、ruoyi-modules-job、ruoyi-modules-system四个应用&#xff0c;每个应用都部署在单独的一台机器里边&#xff0c;应用对应的日志的也单独存…...

VPN协议是如何工作的

VPN&#xff0c;全名 Virtual Private Network&#xff0c;虚拟专用网&#xff0c;就是利用开放的公众网络&#xff0c;建立专用数据传输通道&#xff0c;将远程的分支机构、移动办公人员等连接起来。 VPN 通过隧道技术在公众网络上仿真一条点到点的专线&#xff0c;是通过利用…...

工程地质软件市场:发展现状、趋势与策略建议

一、引言 在工程建设领域&#xff0c;准确把握地质条件是确保项目顺利推进和安全运营的关键。工程地质软件作为处理、分析、模拟和展示工程地质数据的重要工具&#xff0c;正发挥着日益重要的作用。它凭借强大的数据处理能力、三维建模功能、空间分析工具和可视化展示手段&…...

VTK如何让部分单位不可见

最近遇到一个需求&#xff0c;需要让一个vtkDataSet中的部分单元不可见&#xff0c;查阅了一些资料大概有以下几种方式 1.通过颜色映射表来进行&#xff0c;是最正规的做法 vtkNew<vtkLookupTable> lut; //值为0不显示&#xff0c;主要是最后一个参数&#xff0c;透明度…...

【JavaWeb】Docker项目部署

引言 之前学习了Linux操作系统的常见命令&#xff0c;在Linux上安装软件&#xff0c;以及如何在Linux上部署一个单体项目&#xff0c;大多数同学都会有相同的感受&#xff0c;那就是麻烦。 核心体现在三点&#xff1a; 命令太多了&#xff0c;记不住 软件安装包名字复杂&…...

Typeerror: cannot read properties of undefined (reading ‘XXX‘)

最近需要在离线机器上运行软件&#xff0c;所以得把软件用docker打包起来&#xff0c;大部分功能都没问题&#xff0c;出了一个奇怪的事情。同样的代码&#xff0c;在本机上用vscode可以运行起来&#xff0c;但是打包之后在docker里出现了问题。使用的是dialog组件&#xff0c;…...

安全突围:重塑内生安全体系:齐向东在2025年BCS大会的演讲

文章目录 前言第一部分&#xff1a;体系力量是突围之钥第一重困境是体系思想落地不畅。第二重困境是大小体系融合瓶颈。第三重困境是“小体系”运营梗阻。 第二部分&#xff1a;体系矛盾是突围之障一是数据孤岛的障碍。二是投入不足的障碍。三是新旧兼容难的障碍。 第三部分&am…...

Selenium常用函数介绍

目录 一&#xff0c;元素定位 1.1 cssSeector 1.2 xpath 二&#xff0c;操作测试对象 三&#xff0c;窗口 3.1 案例 3.2 窗口切换 3.3 窗口大小 3.4 屏幕截图 3.5 关闭窗口 四&#xff0c;弹窗 五&#xff0c;等待 六&#xff0c;导航 七&#xff0c;文件上传 …...

从“安全密码”到测试体系:Gitee Test 赋能关键领域软件质量保障

关键领域软件测试的"安全密码"&#xff1a;Gitee Test如何破解行业痛点 在数字化浪潮席卷全球的今天&#xff0c;软件系统已成为国家关键领域的"神经中枢"。从国防军工到能源电力&#xff0c;从金融交易到交通管控&#xff0c;这些关乎国计民生的关键领域…...

学习一下用鸿蒙​​DevEco Studio HarmonyOS5实现百度地图

在鸿蒙&#xff08;HarmonyOS5&#xff09;中集成百度地图&#xff0c;可以通过以下步骤和技术方案实现。结合鸿蒙的分布式能力和百度地图的API&#xff0c;可以构建跨设备的定位、导航和地图展示功能。 ​​1. 鸿蒙环境准备​​ ​​开发工具​​&#xff1a;下载安装 ​​De…...

【Veristand】Veristand环境安装教程-Linux RT / Windows

首先声明&#xff0c;此教程是针对Simulink编译模型并导入Veristand中编写的&#xff0c;同时需要注意的是老用户编译可能用的是Veristand Model Framework&#xff0c;那个是历史版本&#xff0c;且NI不会再维护&#xff0c;新版本编译支持为VeriStand Model Generation Suppo…...

2.3 物理层设备

在这个视频中&#xff0c;我们要学习工作在物理层的两种网络设备&#xff0c;分别是中继器和集线器。首先来看中继器。在计算机网络中两个节点之间&#xff0c;需要通过物理传输媒体或者说物理传输介质进行连接。像同轴电缆、双绞线就是典型的传输介质&#xff0c;假设A节点要给…...