Linux 命令和 vi/vim 命令
Linux 命令概览
1. 文件和目录操作
-
列出目录内容
ls
:列出当前目录内容ls -l
:以长格式列出ls -a
:显示隐藏文件ls -lh
:以长格式和人类可读方式显示大小ls -R
:递归列出子目录ls -d */
:仅列出目录ls -t
:按修改时间排序ls -S
:按文件大小排序
-
改变当前目录
cd /path/to/directory
:切换到指定目录cd ..
:切换到上级目录cd ~
:切换到用户主目录cd -
:切换到上一个目录cd ~username
:切换到指定用户的主目录
-
显示当前目录
pwd
:显示当前工作目录的完整路径
-
创建目录
mkdir newdir
:创建新目录mkdir -p path/to/newdir
:创建多级目录
-
删除空目录
rmdir emptydir
:删除空目录
-
删除文件或目录
rm file.txt
:删除文件rm -r directory
:递归删除目录rm -rf directory
:强制递归删除rm -i file.txt
:删除前提示确认
-
复制文件或目录
cp file1.txt file2.txt
:复制文件cp -r dir1 dir2
:递归复制目录cp -u file1.txt /path/to/destination
:仅当目标文件较旧时复制
-
移动或重命名文件
mv file.txt newfile.txt
:重命名文件mv file.txt /path/to/destination
:移动文件mv -i file.txt /path/to/destination
:移动前提示确认
-
创建空文件或更新文件时间戳
touch newfile.txt
:创建空文件touch -m file.txt
:更新修改时间戳touch -a file.txt
:更新访问时间戳
2. 文件查看和编辑
-
显示文件内容
cat file.txt
:显示文件内容cat file1.txt file2.txt > combined.txt
:合并文件内容cat -n file.txt
:显示带行号的内容cat -E file.txt
:显示行尾的换行符
-
分页显示文件内容
less file.txt
:分页显示文件内容q
:退出 less/pattern
:搜索n
:重复搜索N
:反向搜索g
:跳转到开头G
:跳转到末尾
-
显示文件前几行
head file.txt
:显示前10行head -n 5 file.txt
:显示前5行head -c 100 file.txt
:显示前100个字节
-
显示文件最后几行
tail file.txt
:显示最后10行tail -n 5 file.txt
:显示最后5行tail -f log.txt
:实时显示新增内容tail -c 100 file.txt
:显示最后100个字节
-
简单的文本编辑器
nano file.txt
:打开文件进行编辑Ctrl + O
:保存文件Ctrl + X
:退出编辑器Ctrl + K
:剪切整行Ctrl + U
:粘贴剪切的行Ctrl + W
:搜索文本Alt + R
:替换文本
-
强大的文本编辑器
vim file.txt
:打开文件进行编辑
3. 系统信息
-
显示系统中正在运行的进程
top
:显示系统资源使用情况和运行中的进程q
:退出 topP
:按 CPU 使用率排序M
:按内存使用率排序
-
显示当前进程
ps
:显示当前用户的进程ps aux
:显示所有用户的进程ps -ef
:显示所有进程的详细信息ps -C processname
:显示指定进程的信息
-
终止进程
kill PID
:终止指定进程kill -9 PID
:强制终止指定进程killall processname
:终止所有指定进程
-
显示磁盘空间使用情况
df
:显示所有文件系统的磁盘使用情况df -h
:以人类可读方式显示df -T
:显示文件系统的类型
-
显示目录或文件的磁盘使用情况
du -sh /path/to/directory
:显示目录总大小du -ah /path/to/directory
:显示所有文件和子目录的大小du -a | sort -n -r | head -n 10
:显示最大的10个文件
-
显示系统信息
uname
:显示内核名称uname -a
:显示所有系统信息uname -m
:显示机器硬件架构uname -r
:显示内核版本
-
显示网络接口配置
ifconfig
:显示网络接口配置(某些系统可能需要安装 net-tools)ip addr
:显示网络接口配置ip link
:显示网络接口状态
4. 用户和权限
-
显示当前用户名
whoami
:显示当前登录的用户名
-
切换用户身份
su
:切换到超级用户su username
:切换到指定用户su -
:切换到超级用户并加载环境变量su - username
:切换到指定用户并加载环境变量
-
以超级用户或其他用户的身份执行命令
sudo command
:以超级用户身份执行命令sudo -u username command
:以指定用户身份执行命令sudo -i
:以超级用户身份打开一个 shellsudo -l
:列出当前用户可以执行的 sudo 命令
-
更改文件或目录的权限
chmod 755 file.txt
:设置权限为 rwxr-xr-xchmod +x script.sh
:添加可执行权限chmod -R 755 /path/to/directory
:递归设置权限
-
更改文件或目录的所有者
chown user:group file.txt
:更改所有者和组chown -R user:group /path/to/directory
:递归更改所有者和组chown :group file.txt
:仅更改文件的组
5. 压缩和解压
-
打包或解包文件
tar -cvf archive.tar file1 file2
:创建 tar 文件tar -xvf archive.tar
:解包 tar 文件tar -czvf archive.tar.gz file1 file2
:创建 gzip 压缩 tar 文件tar -xzvf archive.tar.gz
:解压 gzip 压缩 tar 文件tar -cjvf archive.tar.bz2 file1 file2
:创建 bzip2 压缩 tar 文件tar -xjvf archive.tar.bz2
:解压 bzip2 压缩 tar 文件
-
压缩或解压缩文件
gzip file.txt
:压缩文件gunzip file.txt.gz
:解压缩文件gzip -d file.txt.gz
:解压缩文件zip archive.zip file1 file2
:创建 zip 文件unzip archive.zip
:解压 zip 文件zip -r archive.zip /path/to/directory
:递归压缩目录unzip -l archive.zip
:列出 zip 文件的内容
6. 网络
-
测试网络连接
ping google.com
:测试与 google.com 的连接ping -c 4 google.com
:发送4次 ICMP 请求ping -s 1024 google.com
:发送1024字节的数据包
-
显示网络状态
netstat -an
:显示所有网络连接netstat -tuln
:显示监听的 TCP 和 UDP 端口netstat -r
:显示路由表netstat -i
:显示网络接口统计信息
-
安全地登录远程计算机
ssh user@hostname
:以 user 身份登录到 hostnamessh -p 2222 user@hostname
:指定端口登录ssh -i keyfile user@hostname
:使用指定的私钥文件登录
-
安全复制文件到远程计算机或从远程计算机复制文件
scp file.txt user@hostname:/path/to/destination
:将本地文件复制到远程主机scp user@hostname:/path/to/file.txt /local/path
:从远程主机复制文件到本地scp -r /local/dir user@hostname:/remote/dir
:递归复制目录
7. 软件管理
-
Debian/Ubuntu 包管理工具
sudo apt-get update
:更新包列表sudo apt-get upgrade
:升级已安装的包sudo apt-get install package
:安装包sudo apt-get remove package
:卸载包sudo apt-get autoremove
:自动卸载不再需要的依赖包sudo apt-get clean
:清理下载的包文件sudo apt-get autoclean
:清理不再需要的包文件
-
Red Hat/CentOS 包管理工具
sudo yum update
:更新所有包sudo yum install package
:安装包sudo yum remove package
:卸载包sudo yum list installed
:列出已安装的包sudo yum search keyword
:搜索包
-
Fedora 包管理工具
sudo dnf update
:更新所有包sudo dnf install package
:安装包sudo dnf remove package
:卸载包sudo dnf list installed
:列出已安装的包sudo dnf search keyword
:搜索包
-
跨发行版的包管理系统
sudo snap install package
:安装包sudo snap remove package
:卸载包sudo snap list
:列出已安装的 snap 包sudo snap refresh
:更新所有 snap 包
8. 其他
-
显示命令的手册页
man ls
:显示 ls 命令的手册页man 1 ls
:显示 ls 命令的手册页(第1部分)man 5 crontab
:显示 crontab 文件格式的手册页(第5部分)
-
显示命令的简短描述
whatis ls
:显示 ls 命令的简短描述
-
查找程序文件的位置
whereis ls
:查找 ls 命令的二进制文件、源代码和手册页
-
查找可执行文件的位置
which ls
:查找 ls 命令的可执行文件位置
-
查看或执行历史命令
history
:显示命令历史!command
:重新执行最近的 command!123
:重新执行命令历史中的第123条命令history | grep command
:搜索命令历史
-
创建命令别名
alias ll='ls -l'
:创建 ll 别名,等同于ls -l
unalias ll
:删除 ll 别名alias
:显示所有别名
-
输出文本
echo "Hello, World!"
:输出 Hello, World!echo $PATH
:输出 PATH 环境变量的值echo -e "line1\nline2"
:输出多行文本
-
显示或设置系统日期和时间
date
:显示当前日期和时间date +%Y-%m-%d
:显示当前日期,格式为 YYYY-MM-DDsudo date --set="2024-10-10 12:00:00"
:设置系统日期和时间为 2024-10-10 12:00:00
-
查找文件
find /path/to/search -name "filename"
:在指定目录中查找名为 filename 的文件find /path/to/search -type d
:查找目录find /path/to/search -type f
:查找文件find /path/to/search -mtime -7
:查找过去7天内修改过的文件find /path/to/search -size +100M
:查找大于100MB的文件
-
搜索文本
grep pattern file.txt
:在 file.txt 中搜索 patterngrep -i pattern file.txt
:忽略大小写搜索grep -r pattern /path/to/search
:递归搜索目录grep -v pattern file.txt
:反向搜索,显示不包含 pattern 的行grep -n pattern file.txt
:显示行号
-
排序
sort file.txt
:按字母顺序排序sort -r file.txt
:按字母顺序逆序排序sort -n file.txt
:按数字排序sort -k 2 file.txt
:按第二列排序
-
去重
uniq file.txt
:去除连续重复的行sort file.txt | uniq
:去除所有重复的行
-
提取字段
cut -d ',' -f 1,3 file.csv
:以逗号为分隔符,提取第1列和第3列cut -c 1-10 file.txt
:提取前10个字符
-
流编辑器
sed 's/old/new/' file.txt
:替换文件中的 old 为 newsed -i 's/old/new/' file.txt
:直接修改文件内容sed '1,5d' file.txt
:删除前5行sed '/pattern/d' file.txt
:删除包含 pattern 的行sed -n '1,5p' file.txt
:打印第1行到第5行
-
文本处理
awk '{print $1}' file.txt
:打印每行的第一个字段awk -F ',' '{print $1, $3}' file.csv
:以逗号为分隔符,打印第1列和第3列awk 'NR==1,NR==5' file.txt
:打印第1行到第5行awk '/pattern/ {print $0}' file.txt
:打印包含 pattern 的行
Vi/Vim 命令
1. Vi/Vim 的三种主要模式
- 普通模式(Normal Mode):启动
vi
/vim
后默认进入的模式,在此模式下可以使用键盘快捷键进行文件浏览和编辑操作。 - 插入模式(Insert Mode):在此模式下可以输入文本。可以通过在普通模式下按下
i
键(insert)、a
键(append)等进入。 - 命令行模式(Command-line Mode):在此模式下可以执行命令,如保存文件、退出编辑器等。通常通过在普通模式下按下
:
键进入。
2. 基本操作
普通模式下的命令
-
移动光标
h
:左移一格j
:下移一行k
:上移一行l
:右移一格0
:移动到行首$
:移动到行尾w
:向前移动到下一个单词的开始b
:向后移动到上一个单词的开始G
:移动到文件的最后一行gg
:移动到文件的第一行10G
:移动到文件的第10行Ctrl + f
:向下翻一页Ctrl + b
:向上翻一页Ctrl + d
:向下翻半页Ctrl + u
:向上翻半页
-
编辑操作
dd
:删除当前行x
:删除光标所在位置的字符u
:撤销上一步操作Ctrl + r
:重做上一步撤销的操作p
:在光标后粘贴文本P
:在光标前粘贴文本y
:复制(yank)光标所在位置的文本yy
:复制当前行d$
:删除从光标到行尾的文本d0
:删除从光标到行首的文本D
:删除从光标到行尾的文本C
:删除从光标到行尾的文本并进入插入模式S
:删除当前行并进入插入模式J
:合并当前行和下一行
-
搜索和替换
/pattern
:向前搜索pattern
?pattern
:向后搜索pattern
n
:重复上次搜索N
:反向重复上次搜索:s/old/new/
:替换单个匹配项:%s/old/new/g
:替换所有匹配项:%s/old/new/gc
:替换所有匹配项,并提示确认*
:搜索光标所在单词#
:反向搜索光标所在单词
-
文件操作
:w
:保存文件:q
:退出编辑器:wq
或ZZ
:保存并退出:q!
:不保存并强制退出:e!
:放弃更改并重新加载文件:set nu
:显示行号:set nonu
:隐藏行号:set hlsearch
:开启搜索高亮:set nohlsearch
:关闭搜索高亮:set wrap
:开启自动换行:set nowrap
:关闭自动换行:set tabstop=4
:设置制表位为4个空格:set shiftwidth=4
:设置缩进宽度为4个空格:set expandtab
:将制表符转换为空格:set noexpandtab
:不将制表符转换为空格
插入模式
-
进入插入模式
i
:在当前光标前插入文本a
:在当前光标后插入文本I
:在当前行首插入文本A
:在当前行尾插入文本o
:在当前行之下新建一行并进入插入模式O
:在当前行之上新建一行并进入插入模式R
:进入替换模式Ctrl + t
:增加一个缩进Ctrl + d
:减少一个缩进Ctrl + y
:向上复制一行Ctrl + e
:向下复制一行
-
退出插入模式
-
Esc
:从插入模式返回到普通模式
-
命令行模式
-
文件操作
:w filename
:将当前缓冲区内容写入指定文件:r filename
:读取文件内容到当前缓冲区:w !sudo tee %
:保存需要管理员权限的文件:w !command
:将当前缓冲区内容作为命令的标准输入
-
窗口操作
:sp filename
:水平分割窗口并打开文件:vsp filename
:垂直分割窗口并打开文件Ctrl + w h
:左移窗口Ctrl + w j
:下移窗口Ctrl + w k
:上移窗口Ctrl + w l
:右移窗口:qall
:关闭所有窗口:only
:只保留当前窗口:tabnew filename
:在新标签页中打开文件gt
:切换到下一个标签页gT
:切换到上一个标签页
-
宏录制
qa
:开始录制宏,存储在寄存器a
中q
:停止录制宏@a
:执行寄存器a
中的宏@@
:重复执行上次的宏
-
多文件编辑
:e filename
:打开另一个文件:n
:切换到下一个文件:N
:切换到上一个文件:args
:显示当前编辑的文件列表:bufdo command
:在所有缓冲区中执行命令:tabdo command
:在所有标签页中执行命令
3. 实用技巧
-
可视选择模式
v
:进入字符选择模式V
:进入行选择模式Ctrl + v
:进入列选择模式y
:复制选中的文本d
:删除选中的文本:
:在选中的行上执行命令>
:向右缩进选中的行<
:向左缩进选中的行
-
多文件编辑
:args file1 file2
:打开多个文件:next
:切换到下一个文件:prev
:切换到上一个文件:first
:切换到第一个文件:last
:切换到最后一个文件
-
快速跳转
Ctrl + o
:跳转到上一个位置Ctrl + i
:跳转到下一个位置Ctrl + p
:向上搜索历史命令Ctrl + n
:向下搜索历史命令
-
自定义配置
- 编辑
~/.vimrc
文件来定制 Vim 行为 - 常见配置:
set nu " 显示行号 set tabstop=4 " 设置制表位为4个空格 set shiftwidth=4 " 设置缩进宽度为4个空格 set expandtab " 将制表符转换为空格 set autoindent " 自动缩进 set smartindent " 智能缩进 set hlsearch " 开启搜索高亮 set incsearch " 增量搜索 set ignorecase " 忽略大小写 set smartcase " 智能大小写
- 编辑
相关文章:
Linux 命令和 vi/vim 命令
Linux 命令概览 1. 文件和目录操作 列出目录内容 ls:列出当前目录内容ls -l:以长格式列出ls -a:显示隐藏文件ls -lh:以长格式和人类可读方式显示大小ls -R:递归列出子目录ls -d */:仅列出目录ls -t&#x…...
鸿蒙征文|鸿蒙心路旅程:始于杭研所集训营,升华于横店
始于杭研所 在2024年7月,我踏上了一段全新的旅程,前往风景如画的杭州,参加华为杭研所举办的鲲鹏&昇腾集训营。这是一个专门为开发者设计的培训项目,中途深入学习HarmonyOS相关技术。对于我这样一个对技术充满热情的学生来说&…...
【docker】docker commit 命令 将当前容器的状态保存为一个新的镜像
在Docker容器中安装了许多软件,并希望将当前容器的状态保存为一个新的镜像,可以使用docker commit命令来创建一个新的镜像。以下是如何操作的步骤: 找到容器ID或名称: 首先,需要找到想要保存的容器的ID或名称。可以使用…...
Java基础1.0
1.Java有哪些数据结构 Java语言是强类型语言,对于每一种数据都定义了明确的具体数据结构,在内存中分配了不同大小的内存空间。 基本数据结构 整数类型:byte,short,long,int。 字符类型:doub…...
完全二叉树的基本操作(顺序存储)
#include<iostream> #include<math.h> using namespace std;#define MaxSize 100 struct TreeNode {int value;bool isEmpty;//判断该节点是否为空 }t[MaxSize];/** *定义一个长度位MaxSize的数组,按照从上到下, *从左到右的方式依次存储完全…...
Vue Form表单的使用,rules格式校验网络校验,键盘按键监听
Form表单 rules格式校验 可以在validator中进行网络请求,实现网络校验 const formRules {userName: [{required: true, message: "用户名不能为空", trigger: blur}, {min: 5,max: 10,message: "长度必须5-10位",trigger: blur}],passWord: …...
PyTorch2
Tensor的常见操作: 获取元素值: 注意: 和Tensor的维度没有关系,都可以取出来! 如果有多个元素则报错; import torch def test002():data torch.tensor([18])print(data.item())pass if __name__ &qu…...
蓝牙 AVRCP 协议详解
前言 随着无线音频设备的普及,蓝牙已经成为智能设备间通信的主流方式之一。除了传输音频流的 A2DP 协议外,AVRCP(Audio/Video Remote Control Profile,音频/视频远程控制协议)为用户提供了对蓝牙音频设备的控制能力&am…...
深入解析下oracle char和varchar2底层存储方式
oracle数据库中,char和varchar2数据类型用来存储字符数据。char类型一旦定义多大,那么它就分配多少字节空间;varchar2类型定义多大,代表它可以扩展的最大大小为多大,一开始空间根据使用来决定。字符数据存储在oracle表…...
2024年底-Arch linux或转为0BSD许可证!
原文:https://archlinux.org/news/providing-a-license-for-package-sources/ 解读:Arch Linux社区通过RFC 40达成共识,决定将所有软件包源代码更改为0BSD许可证。 0BSD许可证是什么?:这是一个非常自由的开源许可证&a…...
YOLOv10改进,YOLOv10添加SE注意力机制,二次C2f结构
摘要 理论介绍 SE 注意力机制是一种提升卷积神经网络(CNN)性能的模块,SE更关注重要的特征图,增强了网络的表现,同时仅增加了较少的参数。SE 机制包含两个主要步骤: Squeeze (压缩):对所有特征图进行全局平均池化,生成一个通道描述符。Excitation (激励):将通道描述符…...
探索运维新视界,CMDB的3D机房功能深度解析
在数字化转型的浪潮中,数据中心作为企业信息架构的核心,其高效、智能的管理成为了企业竞争力的关键因素之一。3D机房作为这一趋势下的创新产物,正逐步改变着传统机房运维的面貌。本文将结合乐维CMDB,深入探讨3D机房的功能细节、应…...
[QDS]从零开始,写第一个Qt Design Studio到程序调用的项目
前言 最近在使用Qt Design Studio进行开发,但是简中网上要不就是只搜得到Qt Designer(Qt Creator内部库),要不就只搜得到一点营销号不知道从哪里搬来的账号,鉴于Qt Design Studio是一个这么强大的软件,自然是需要来进行一下小小的…...
万物皆可Docker,在NAS上一键部署最新苹果MacOS 15系统
万物皆可Docker,在NAS上一键部署最新苹果MacOS 15系统 哈喽小伙伴们还,我是Stark-C~ 最近苹果Mac mini 2024款在政府补贴的加持下,仅需3500块钱左右就能到手确实挺香的。我看很多评论区的小伙伴跃跃欲试,但是也有不少之前从未体…...
视频监控实现画面缩放功能
文章目录 概要一、功能说明二、核心实现代码三、技术细节 概要 在视频监控系统中,经常需要查看视频画面中的细节。通过实现区域放大、滚轮缩放和拖拽平移等功能,可以让用户更方便地观察视频细节。本文介绍如何在 Windows 系统下实现这些交互功能。 一、…...
通信综合—8.通信网络安全
一、信息系统安全概述 1.信息系统的构成和分类 信息系统是将用于收集、处理、存储和传播信息的部件组织在一起而成的相关联的整体,般是由计算机硬件、网络和通信设备、计算机软件、信息资源和信息用户组成。它是以处理信息流为目的的人机一体化系统。信息系统主要…...
keepalived双机热备方案实现Nginx高可用
问题描述 只用一台Nginx做反向代理,如果这台Nginx出现故障(比如宕机),则服务不可用。 以下给出keepalived双机热备方案实现Nginx高可用的方法。先介绍几个概念: 高可用 高可用(High Availability)是指系统或服务能…...
数据结构——排序算法第一幕(插入排序:直接插入排序、希尔排序 选择排序:直接选择排序,堆排序)超详细!!!!
文章目录 前言一、排序1.1 概念1.2 常见的排序算法 二、插入排序2.1 直接插入排序2.2 希尔排序希尔排序的时间复杂度 三、选择排序3.1 直接选择排序3.2 堆排序 总结 前言 时间很快,转眼间已经到数据结构的排序算法部分啦 今天我们来学习排序算法当中的 插入排序 和 …...
【JavaEE初阶】枫叶经霜艳,梅花透雪香-计算机是如何运行的?
本篇博客给大家带来的是与计算机相关的知识点, 包括:计算机的组成, 指令, 进程(重点). 文章专栏: JavaEE初阶 若有问题 评论区见 欢迎大家点赞 评论 收藏 分享 如果你不知道分享给谁,那就分享给薯条. 你们的支持是我不断创作的动力 . 1. 计算机的组成 1.1 计算机的发展史 计算…...
MySQL数据类型与存储结构
补充知识,事务隔离的等级: READ UNCOMMITTED(读未提交) :这是最低的隔离级别,允许事务读取其他事务未提交的数据,可能导致脏读、不可重复读和幻读问题。 READ COMMITTED(读已提交࿰…...
CSRF保护--laravel进阶篇
laravel对csrf非常重视,专门针对csrf作出了很多的保护。如果您是刚刚接触laravel的路由不久,那么您可能对于web.php路由文件的post请求很疑惑,因为get请求很顺利,而post请求则可能会遭遇失败。其中一个失败的原因是由于laravel的c…...
服务器数据恢复—raid5阵列+LVM+VXFS数据恢复案例
服务器存储数据恢复环境: 某品牌MSA2000FC存储中有一组由7块盘组建的RAID5阵列,另外还有1块硬盘作为热备盘使用。 基于RAID5阵列划分的几个LUN分配给小机使用,存储空间通过LVM管理,重要数据为Oracle数据库及OA服务端。 服务器存储…...
游卡,科锐国际,蓝禾,汤臣倍健,三七互娱,顺丰,快手,途游游戏25秋招内推
游卡,科锐国际,蓝禾,汤臣倍健,三七互娱,顺丰,快手,途游游戏25秋招内推 ①科锐国际25届秋招补录 人力资源类岗位,补录城市:苏州、宁波、武汉、东莞;全日制公办…...
内存不足引发C++程序闪退崩溃问题的分析与总结
目录 1、内存不足一般出现在32位程序中 2、内存不足时会导致malloc或new申请内存失败 2.1、malloc申请内存失败,返回NULL 2.2、new申请内存失败,抛出异常 3、内存不足项目实战案例中相关细节与要点说明 3.1、内存不足导致malloc申请内存失败&#…...
C++ 多态作业练习
作业1、 编写一个英雄类 class Hero{ int atk; int def; int spd; int hp; public: 所有的get set 方法 void equipWeapon(Weapon*) 根据传入的武器不同,英雄获得不同的属性加成 } #include <iostream> #include <cstring&g…...
(免费送源码)计算机毕业设计原创定制:Java+JSP+HTML+JQUERY+AJAX+MySQL springboot计算机类专业考研学习网站管理系统
摘 要 大数据时代下,数据呈爆炸式地增长。为了迎合信息化时代的潮流和信息化安全的要求,利用互联网服务于其他行业,促进生产,已经是成为一种势不可挡的趋势。在大学生在线计算机类专业考研学习网站管理的要求下,开发一…...
层次聚类(Hierarchical Clustering)详解
✅作者简介:2022年博客新星 第八。热爱国学的Java后端开发者,修心和技术同步精进。 🍎个人主页:Java Fans的博客 🍊个人信条:不迁怒,不贰过。小知识,大智慧。 💞当前专栏…...
Cannal实现MySQL主从同步环境搭建
大家好,我是袁庭新。 在多数情况下,客户端往往会优先获取缓存中的数据。然而,当缓存数据与数据库中的实际数据存在显著不一致时,可能会导致严重的后果。因此,确保数据库与缓存数据之间的一致性变得至关重要,…...
Js-函数-03
函数定义 在java中我们为了提高代码的复用性,可以使用方法。同样,在JavaScript中可以使用函数来完成相同的事情。JavaScript中的函数被设计为执行特定任务的代码块,通过关键字function来定义。 <!DOCTYPE html> <html lang"en…...
9.机器学习--SVM支持向量机
支持向量机(Support Vector Machine,SVM)是一种二分类监督学习模型。支持向量机最早在 1964 年被提出,1995年前后理论成熟并开始被大量应用与人像识别、文本分类等问题中。它的基本模型是定义在特征空间上的间隔最大的线性分类器&…...
探索Python的HTTP之旅:揭秘Requests库的神秘面纱
文章目录 **探索Python的HTTP之旅:揭秘Requests库的神秘面纱**第一部分:背景介绍第二部分:Requests库是什么?第三部分:如何安装Requests库?第四部分:Requests库的五个简单函数使用方法第五部分&…...
vue3项目使用动态表单formcreate
使用两个插件: 支持可视化设计的低代码表单组件 | FormCreate 好用的低代码可视化表单设计器 | FcDesigner 一、安装 1.使用 Node.js 引入 npm install form-create/element-ui npm install form-create/designer^3 npm install element-plus 2. main.js引入…...
指针的奥秘:深入探索内存的秘密
前言 在计算机编程的广阔天地中,指针作为一种独特的数据类型,它不仅是C语言的核心,也是理解计算机内存管理的基石。指针的概念虽然强大,但对于初学者来说,它常常是学习过程中的一个难点。本文旨在揭开指针的神秘面纱&a…...
车载摄像camera基础知识和评估
一、车载摄像头应用 以下是根据图片内容重新制作的表格: | 序号 | 产品用途 |------|---------------- | 1 | AVM/环视360摄像头 | 2 | DMS摄像头 | 3 | IMS/OMS摄像头 | 4 | RVC摄像头 | 5 | 红外夜视摄像头 | 6 | 底盘透明摄像头 | 7 …...
OpenCV 图像轮廓查找与绘制全攻略:从函数使用到实战应用详解
摘要:本文详细介绍了 OpenCV 中用于查找图像轮廓的 cv2.findContours() 函数以及绘制轮廓的 cv2.drawContours() 函数的使用方法。涵盖 cv2.findContours() 各参数(如 mode 不同取值对应不同轮廓检索模式)及返回值的详细解析,搭配…...
微信小程序WXSS全局样式与局部样式的使用教程
微信小程序WXSS全局样式与局部样式的使用教程 引言 在微信小程序的开发中,样式的设计与实现是提升用户体验的关键部分。WXSS(WeiXin Style Sheets)作为微信小程序的样式表语言,不仅支持丰富的样式功能,还能通过全局样式与局部样式的灵活运用,帮助开发者构建美观且易于维…...
Leetcode142. 环形链表 II(HOT100)
链接 我的错误代码: class Solution { public:ListNode *detectCycle(ListNode *head) {if(!head||!head->next)return nullptr;ListNode* f head->next,*s head;while(f){f f->next,s s->next;if(!f)return nullptr;f f->next;if(fs){ListNo…...
Java程序基础⑤Java数组的定义和使用+引用的概念
目录 1. Java数组的基本概念 1.1 数组的定义 1.2 数组存在的意义 1.3 数组的使用 1.4 二维数组 2. 引用类型JVM的内存分布 2.1 JVM的内存分布 2.2 基本数据类型和引用型数据类型的区别 2.3 引用注意事项 2.4 传值传递 3. 数组总结和应用场景 3.1 一维数组和二维数组…...
丁真杯理塘大赛题解
前言:部分代码思路可能与题解思路不同,请勿强行带入 真蛰虫 原题链接 1.一道非常基础的数学题。 2.主要就是在考察分解质因数。首先看真蛰虫的质因数是不是包含了容器的所有质因数,如果没有,那么就不能放入容器中。如果全部包…...
FPGA经验谈系列文章——8、复位的设计
前言 剑法往往有着固定的招式套路,而写代码似乎也存在类似的情况。不知从何时起,众多 FPGA 工程师们在编写代码时开启了一种关于 always 语句块的流行写法,那就是: always @(posedge i_clk or negedge i_rstn) 就笔者所经历的诸多项目以及所接触到的不少工程师而言,大家在…...
Android studio与JS交互
文章目录 前言一、html二、使用步骤1.2.AS 总结 前言 最近在使用Android Studio的WebView,有些功能要AS与JS交互。 一、html html文件 <!DOCTYPE html> <html> <!--javascript--> <head><meta charset"utf-8"><title>Carson…...
健身房小程序服务渠道开展
健身不单单是锻炼身体、保持身材,也是一种社交方式,城市里门店不少,每家都有一定流量和老客,但仅靠传统线下拉客/自然流量前往和线上朋友圈、短视频发硬广等方式还不够。 商家需要找到更多潜在目标客户,而消费者也对门…...
大宗商品行业区块链应用
应用场景 区块链技术具有透明性、去中心化、不可篡改等特点,因此可以在大宗商品定价方面得到应用。通过区块链技术,相关交易的各方可以在无需依赖中心化第三方的情况下,实时、准确地获取定价信息。这种技术的应用能够提高效率、降低成本、提…...
软考教材重点内容 信息安全工程师 第 5 章 物理与环境安全技术
5.1.1 物理安全概念 传统上的物理安全也称为实体安全,是指包括环境、设备和记录介质在内的所有支持网络信息系统运行的硬件的总体安全,是网络信息系统安全、可靠、不间断运行的基本保证,并且确保在信息进行加工处理、服务、决策支持的过程中&…...
蓝桥杯每日真题 - 第21天
题目:(空间) 题目描述(12届 C&C B组A题) 解题思路: 转换单位: 内存总大小为 256MB,换算为字节: 25610241024268,435,456字节 计算每个整数占用空间: 每个 32 位整数占用…...
【C++】C++11新特性详解:可变参数模板与emplace系列的应用
C语法相关知识点可以通过点击以下链接进行学习一起加油!命名空间缺省参数与函数重载C相关特性类和对象-上篇类和对象-中篇类和对象-下篇日期类C/C内存管理模板初阶String使用String模拟实现Vector使用及其模拟实现List使用及其模拟实现容器适配器Stack与QueuePriori…...
下载并安装Visual Studio 2017过程
一、下载 1、下载链接 下载链接:官方网址 先登录 往下滑找到较早的下载 2、进行搜索下载 或者直接点击🔗网站跳转 3、确认系统信息进行下载 二、安装 下载完成后右键使用管理员身份运行 1、点击同意后安装 2、若报错—设置失败 打开控制面板-&g…...
【消息序列】详解(6):深入探讨缓冲区管理与流量控制机制
目录 一、概述 1.1. 缓冲区管理的重要性 1.2. 实现方式 1.2.1. HCI_Read_Buffer_Size 命令 1.2.2. HCI_Number_Of_Completed_Packets 事件 1.2.3. HCI_Set_Controller_To_Host_Flow_Control 命令 1.2.4. HCI_Host_Buffer_Size 命令 1.2.5. HCI_Host_Number_Of_Complete…...
Java开发经验——Spring Test 常见错误
摘要 本文详细介绍了Java开发中Spring Test的常见错误和解决方案。文章首先概述了Spring中进行单元测试的多种方法,包括使用JUnit和Spring Boot Test进行集成测试,以及Mockito进行单元测试。接着,文章分析了Spring资源文件扫描不到的问题&am…...
麦肯锡报告 | 科技落地的真谛:超越技术本身的价值创造
科技创新正在以惊人的速度改变企业运作和客户体验,但实现其潜力的关键在于正确的策略、流程、文化和人才。麦肯锡强调了一个理念:Never just tech(不仅仅是技术)。这表明,成功的数字化转型不仅依赖于技术,还…...