【Linux】初见,基础指令
前言
本文将讲解Linux中最基础的东西-----指令,带大家了解一下Linux中有哪些基础指令,分别有什么作用。
本文中的指令和选项并不全,只介绍较为常用的
pwd指令
语法:pwd
功能:显示当前所在位置(路径)。
root@hcss-ecs-4ce7:~# pwd
/rootroot@hcss-ecs-4ce7:~/path1# pwd
/root/path1
ls指令
语法:ls 选项 文件或目录
功能:对于目录,显示这个目录中所有子目录和文件。对于文件,显示文件名和其他信息。若没有给出指定的文件或目录,则显示当前所在位置的文件或目录。若没有选项则只显示文件名,不显示其他信息。
常用选项
-l 列出详细信息。
root@hcss-ecs-4ce7:~# ls
my.txt my.zip new new.txt path1 path.tgz snap temp.txtroot@hcss-ecs-4ce7:~# ls -l
total 52
-rw-r--r-- 1 root root 21 May 18 14:29 my.txt
-rw-r--r-- 1 root root 183 May 18 14:38 my.zip
drwxr-xr-x 2 root root 4096 May 18 22:12 new
-rw-r--r-- 1 root root 14 May 18 11:35 new.txt
drwxr-xr-x 3 root root 4096 May 18 14:43 path1
-rw-r--r-- 1 root root 274 May 18 22:00 path.tgz
drwx------ 3 root root 4096 Aug 9 2024 snap
-rw-r--r-- 1 root root 22902 May 18 11:51 temp.txtroot@hcss-ecs-4ce7:~# ls -l path1
total 8
-rw-r--r-- 1 root root 0 May 14 20:35 myfile.txt
-rw-r--r-- 1 root root 21 May 18 14:29 my.txt
drwxr-xr-x 3 root root 4096 May 14 23:37 path2
补充:
Linux中目录即为windows中的文件夹 。
建立空文件也会占用磁盘空间,因为文件=文件属性+文件内容,即使内容为空,属性也不会为空。
Linux不同于windows不依靠后缀名来区别文件和目录,而是靠文件属性中第一个字母区别
Linux中的路径分割符为:/,而windows中的为:\
cd指令
cd指令是关于Linux目录路径的指令。
不论是那个操作系统中,目录都是以一个多叉树的形式实现的。Linux中的根目录用 " / "表示。文件或空目录一定是叶子节点。
绝对路径:从 / 开始不依靠其他路径定位位置。
相对路径:通过当前所处路径,定位出位置。
绝对路径不会因为用户位置的改变而导致定位位置改变,通常用于特定服务中配置文件的操作,而相对路径由于其使用简洁方便,常用于命令行。
Linux中存在以 " . "开头的文件,我们称作隐藏文件,不论什么目录里面都会有 " . " 和 " .. "这两个隐藏文件
语法:cd 目录名
功能:改变当前目录到指定的目录下。
常用目录名
相对路径
绝对路径
" .. "
" ~ "
" - "
root@hcss-ecs-4ce7:~# pwd #查看当前所处目录
/root
root@hcss-ecs-4ce7:~# cd /root/path1 #绝对路径,进入到指定的目录下
root@hcss-ecs-4ce7:~/path1# pwd
/root/path1root@hcss-ecs-4ce7:~# pwd
/root
root@hcss-ecs-4ce7:~# cd ./path1 #相对路径,‘.’表示当前目录
root@hcss-ecs-4ce7:~/path1# pwd
/root/path1root@hcss-ecs-4ce7:~/path1# pwd
/root/path1
root@hcss-ecs-4ce7:~/path1# cd .. #".."表示上层目录,这里表达返回上一层目录
root@hcss-ecs-4ce7:~# pwd
/rootroot@hcss-ecs-4ce7:~# pwd
/root
root@hcss-ecs-4ce7:~# cd - #表示进入最近的一次访问的目录
/root/path1
root@hcss-ecs-4ce7:~/path1# pwd
/root/path1root@hcss-ecs-4ce7:~/path1# pwd
/root/path1
root@hcss-ecs-4ce7:~/path1# cd ~ #表示返回家目录,不写~也可以
root@hcss-ecs-4ce7:~# pwd
/root
补充:
cd ~ 返回家目录。对于root账号而言是返回 /root ,对于普通账号而言是返回 /home/xxx(自己的账号名)
touch指令
语法:touch 选项 文件名
功能:对于一个存在的文件,改变其日期时间。对于不存在的文件,新建这个文件。
常用选项:
-a: change only the a ccess time
-m: change only the modification time
root@hcss-ecs-4ce7:~# ls -l
total 52
-rw-r--r-- 1 root root 21 May 18 14:29 my.txt
-rw-r--r-- 1 root root 183 May 18 14:38 my.zip
drwxr-xr-x 2 root root 4096 May 18 22:12 new
-rw-r--r-- 1 root root 14 May 18 11:35 new.txt
drwxr-xr-x 3 root root 4096 May 18 14:43 path1
-rw-r--r-- 1 root root 274 May 18 22:00 path.tgz
drwx------ 3 root root 4096 Aug 9 2024 snap
-rw-r--r-- 1 root root 22902 May 18 11:51 temp.txt
root@hcss-ecs-4ce7:~# touch aaaaa.txt #创建文件
root@hcss-ecs-4ce7:~# ls -l
total 52
-rw-r--r-- 1 root root 0 May 19 16:59 aaaaa.txt
-rw-r--r-- 1 root root 21 May 18 14:29 my.txt
-rw-r--r-- 1 root root 183 May 18 14:38 my.zip
drwxr-xr-x 2 root root 4096 May 18 22:12 new
-rw-r--r-- 1 root root 14 May 18 11:35 new.txt
drwxr-xr-x 3 root root 4096 May 18 14:43 path1
-rw-r--r-- 1 root root 274 May 18 22:00 path.tgz
drwx------ 3 root root 4096 Aug 9 2024 snap
-rw-r--r-- 1 root root 22902 May 18 11:51 temp.txt
补充:stat命令,功能:查看文件的详细信息。用过stat我们就可以观察到touch修改时间的操作
root@hcss-ecs-4ce7:~# stat new.txtFile: new.txtSize: 14 Blocks: 8 IO Block: 4096 regular file
Device: fc01h/64513d Inode: 151998 Links: 1
Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root)
Access: 2025-05-18 11:35:22.012539536 +0800
Modify: 2025-05-18 11:35:19.900507212 +0800
Change: 2025-05-18 11:35:19.900507212 +0800Birth: 2025-05-15 10:42:29.595967837 +0800
修改时间:
root@hcss-ecs-4ce7:~# stat new.txtFile: new.txtSize: 14 Blocks: 8 IO Block: 4096 regular file
Device: fc01h/64513d Inode: 151998 Links: 1
Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root)
Access: 2025-05-18 11:35:22.012539536 +0800
Modify: 2025-05-18 11:35:19.900507212 +0800
Change: 2025-05-18 11:35:19.900507212 +0800Birth: 2025-05-15 10:42:29.595967837 +0800//修改access时间
root@hcss-ecs-4ce7:~# touch touch -a new.txt
root@hcss-ecs-4ce7:~# stat new.txtFile: new.txtSize: 14 Blocks: 8 IO Block: 4096 regular file
Device: fc01h/64513d Inode: 151998 Links: 1
Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root)
Access: 2025-05-19 17:07:15.106092725 +0800
Modify: 2025-05-18 11:35:19.900507212 +0800
Change: 2025-05-19 17:07:15.106092725 +0800 //我们发现这个也发生了修改,这里牵扯其他知识,后面再详细介绍Birth: 2025-05-15 10:42:29.595967837 +0800//修改modify时间
root@hcss-ecs-4ce7:~# touch -m new.txt
root@hcss-ecs-4ce7:~# stat new.txtFile: new.txtSize: 14 Blocks: 8 IO Block: 4096 regular file
Device: fc01h/64513d Inode: 151998 Links: 1
Access: (0644/-rw-r--r--) Uid: ( 0/ root) Gid: ( 0/ root)
Access: 2025-05-19 17:07:15.106092725 +0800
Modify: 2025-05-19 17:08:59.171702276 +0800
Change: 2025-05-19 17:08:59.171702276 +0800Birth: 2025-05-15 10:42:29.595967837 +0800
mkdir指令
语法:mkdir 选项 目录名或路径
功能:在当前位置下创建目录
常用选项:
-p (指定路径创建目录,当目录中有不存在的目录时,直接创建)
root@hcss-ecs-4ce7:~# mkdir new #在当前位置下创建一个目录
root@hcss-ecs-4ce7:~# ls -l
total 40
-rw-r--r-- 1 root root 21 May 19 17:00 my.txt
drwxr-xr-x 2 root root 4096 May 19 17:22 new
drwxr-xr-x 3 root root 4096 May 18 14:43 path1
drwx------ 3 root root 4096 Aug 9 2024 snap
-rw-r--r-- 1 root root 22902 May 18 11:51 temp.txt//指定路径,创建多个目录
root@hcss-ecs-4ce7:~# mkdir -p path/path1/path2/path3
root@hcss-ecs-4ce7:~# ls -l
total 40
-rw-r--r-- 1 root root 21 May 19 17:00 my.txt
drwxr-xr-x 3 root root 4096 May 19 17:24 path
drwxr-xr-x 3 root root 4096 May 18 14:43 path1
drwx------ 3 root root 4096 Aug 9 2024 snap
-rw-r--r-- 1 root root 22902 May 18 11:51 temp.txt
root@hcss-ecs-4ce7:~# tree path //通过tree指令我们可以看到形象的路径
path
└── path1└── path2└── path33 directories, 0 files
补充:tree指令,可以形象的将一个目录里的内容展示出来。若没有安装可更加系统提示安装。
rmdir&rm指令
语法:rmdir 选项 目录名或路径
功能:删除空目录
选项:
-p (当删除子目录时,如果父目录也变成了空目录,则一并删除)
root@hcss-ecs-4ce7:~# ls -l
total 40
-rw-r--r-- 1 root root 21 May 19 17:00 my.txt
drwxr-xr-x 3 root root 4096 May 19 17:24 path
drwxr-xr-x 3 root root 4096 May 18 14:43 path1
drwx------ 3 root root 4096 Aug 9 2024 snap
-rw-r--r-- 1 root root 22902 May 18 11:51 temp.txt//当删除子目录时,如果父目录也变成了空目录,则一并删除
root@hcss-ecs-4ce7:~# rmdir -p path/path1/path2/path3
root@hcss-ecs-4ce7:~# ls -l
total 36
-rw-r--r-- 1 root root 21 May 19 17:00 my.txt
drwxr-xr-x 3 root root 4096 May 18 14:43 path1
drwx------ 3 root root 4096 Aug 9 2024 snap
-rw-r--r-- 1 root root 22902 May 18 11:51 temp.txt
rmdir的弊端在于只能删除空目录,当目录中有内容则无法删除,但rm指令可以
语法:rm 选项 目录名或路径
功能:删除目录或文件
选项:-f 即使是只读文件,也直接删除
-r 删除目录及其包含的所有文件
-i 删除前逐一询问确认
限制:只针对root账号、或普通账号自己创建的目录或文件
root@hcss-ecs-4ce7:~# ls -l
total 36
-rw-r--r-- 1 root root 21 May 19 17:00 my.txt
-rw-r--r-- 1 root root 0 May 19 17:41 new.txt
drwxr-xr-x 3 root root 4096 May 18 14:43 path1
drwx------ 3 root root 4096 Aug 9 2024 snap
-rw-r--r-- 1 root root 22902 May 18 11:51 temp.txt//删除普通文件
root@hcss-ecs-4ce7:~# rm new.txt
root@hcss-ecs-4ce7:~# ls -l
total 36
-rw-r--r-- 1 root root 21 May 19 17:00 my.txt
drwxr-xr-x 3 root root 4096 May 18 14:43 path1
drwx------ 3 root root 4096 Aug 9 2024 snap
-rw-r--r-- 1 root root 22902 May 18 11:51 temp.txtroot@hcss-ecs-4ce7:~# touch new1.txt
root@hcss-ecs-4ce7:~# ls -l
total 36
-rw-r--r-- 1 root root 21 May 19 17:00 my.txt
-rw-r--r-- 1 root root 0 May 19 17:42 new1.txt
drwxr-xr-x 3 root root 4096 May 18 14:43 path1
drwx------ 3 root root 4096 Aug 9 2024 snap
-rw-r--r-- 1 root root 22902 May 18 11:51 temp.txt//删除前询问
root@hcss-ecs-4ce7:~# rm -i new1.txt
rm: remove regular empty file 'new1.txt'? y
root@hcss-ecs-4ce7:~# ls -l
total 36
-rw-r--r-- 1 root root 21 May 19 17:00 my.txt
drwxr-xr-x 3 root root 4096 May 18 14:43 path1
drwx------ 3 root root 4096 Aug 9 2024 snap
-rw-r--r-- 1 root root 22902 May 18 11:51 temp.txtroot@hcss-ecs-4ce7:~# mkdir -p path/path1/path2/path3
root@hcss-ecs-4ce7:~# ls -l
total 40
-rw-r--r-- 1 root root 21 May 19 17:00 my.txt
drwxr-xr-x 3 root root 4096 May 19 17:44 path
drwxr-xr-x 3 root root 4096 May 18 14:43 path1
drwx------ 3 root root 4096 Aug 9 2024 snap
-rw-r--r-- 1 root root 22902 May 18 11:51 temp.txt//删除目录及其所包含的所有文件
root@hcss-ecs-4ce7:~# rm -r path
root@hcss-ecs-4ce7:~# ls -l
total 36
-rw-r--r-- 1 root root 21 May 19 17:00 my.txt
drwxr-xr-x 3 root root 4096 May 18 14:43 path1
drwx------ 3 root root 4096 Aug 9 2024 snap
-rw-r--r-- 1 root root 22902 May 18 11:51 temp.txtroot@hcss-ecs-4ce7:~# mkdir -p path/path1/path2/path3
root@hcss-ecs-4ce7:~# ls -l
total 40
-rw-r--r-- 1 root root 21 May 19 17:00 my.txt
drwxr-xr-x 3 root root 4096 May 19 17:47 path
drwxr-xr-x 3 root root 4096 May 18 14:43 path1
drwx------ 3 root root 4096 Aug 9 2024 snap
-rw-r--r-- 1 root root 22902 May 18 11:51 temp.txt//删除前询问确认
root@hcss-ecs-4ce7:~# rm -ir path
rm: descend into directory 'path'? y
rm: descend into directory 'path/path1'? y
rm: descend into directory 'path/path1/path2'? y
rm: remove directory 'path/path1/path2/path3'? y
rm: remove directory 'path/path1/path2'? y
rm: remove directory 'path/path1'? y
rm: remove directory 'path'? y
root@hcss-ecs-4ce7:~# ls -l
total 36
-rw-r--r-- 1 root root 21 May 19 17:00 my.txt
drwxr-xr-x 3 root root 4096 May 18 14:43 path1
drwx------ 3 root root 4096 Aug 9 2024 snap
-rw-r--r-- 1 root root 22902 May 18 11:51 temp.txt
man指令
语法:man 选项 指令
功能:当我们忘记一个指令怎么使用时,可以使用man来查询。
选项
通常为1-9
补充:man手册分为9章
1是普通的命令
2是系统调用,如open,write之类的(通过这个,至少可以很方便的查到调⽤这个函数,需要加什么 头文件)
3是库函数,如printf,fread4是特殊文件,也就是/dev下的各种设备⽂件
4略
5是指⽂件的格式,比如passwd,就会说明这个文件中各个字段的含义
6是给游戏留的,由各个游戏自己定义
7是附件还有⼀些变量,比如像environ这种全局变量在这里就有说明
8是系统管理用的命令,这些命令只能由root使用,如ifconfig
9略
选项中不给出具体数字,man就会从第一章开始找直到找到。反之如果给出具体数字,man就只会去对应的第几章去找。
root@hcss-ecs-4ce7:~# man printf # 查看printf指令(没错,printf也是⼀个指令)
root@hcss-ecs-4ce7:~# man fork # 查看系统调⽤,默认没有这个指令,man就⾃动去2号⼿册查找
root@hcss-ecs-4ce7:~# man 2 frok # 查看系统调⽤
root@hcss-ecs-4ce7:~# man 3 printf # 查看C库函数
root@hcss-ecs-4ce7:~# man 7 signal # 查看变量
root@hcss-ecs-4ce7:~# man 7 environ
root@hcss-ecs-4ce7:~# man man # 查看man⼿册⾃⼰
echo指令
语法:echo 选项 内容
功能:打印内容或将内容放入文件中
#将echo后面的内容作为字符串,打印出来
root@hcss-ecs-4ce7:~# echo "你好世界"
你好世界
root@hcss-ecs-4ce7:~# echo test.cpp
test.cpp#利用 > 进行重定向操作
root@hcss-ecs-4ce7:~# ls
my.txt path1 snap temp.txt
root@hcss-ecs-4ce7:~# echo "你好世界">new.txt
root@hcss-ecs-4ce7:~# ls
my.txt new.txt path1 snap temp.txt
root@hcss-ecs-4ce7:~# cat new.txt
你好世界# >>进行追加重定向
root@hcss-ecs-4ce7:~# echo "明天你好">>new.txt
root@hcss-ecs-4ce7:~# cat new.txt
你好世界
明天你好# < 输入重定向,与cat new.txt效果上无异
root@hcss-ecs-4ce7:~# cat <new.txt
你好世界
明天你好
补充:重定向有两个特点:1.如果重定向的文件不存在,则创建文件再写入内容。2.如果文件存在则清空文件再写入内容(既覆盖)。
which指令
语法:which 指令名
功能:搜索指令
root@hcss-ecs-4ce7:~# which ls
/usr/bin/ls
root@hcss-ecs-4ce7:~# which man
/usr/bin/man
root@hcss-ecs-4ce7:~# which touch
/usr/bin/touch
补充:我们通过which指令可以看到,指令其实也是目录,存在在bin目录下
指令本质==可执行文件==我们写的C/C++程序
cp指令
语法:cp 源文件或目录 目标文件或目录
功能:拷贝文件或目录
选项
-f 强制拷贝,不论目标文件或目录是否存在
-r 递归处理,将目录下的文件和子目录一起处理。若源文件或目录的形态,不属于目录或符 号链接,则⼀律视为普通文件处理。
-i 覆盖文件前线询问
#普通文件的拷贝
root@hcss-ecs-4ce7:~# ls
my.txt path1 snap temp.txt
root@hcss-ecs-4ce7:~# echo "你好世界"> new.txt
root@hcss-ecs-4ce7:~# cp new.txt cpnew.txt
root@hcss-ecs-4ce7:~# ls
cpnew.txt my.txt new.txt path1 snap temp.txt
root@hcss-ecs-4ce7:~# cat cpnew.txt
你好世界#将多个文件拷贝到目录
root@hcss-ecs-4ce7:~# mkdir new
root@hcss-ecs-4ce7:~# ls
cpnew.txt my.txt new new.txt path1 snap temp.txt
root@hcss-ecs-4ce7:~# cp *.txt new # “*”为通配符,匹配所有以.txt结尾的文件
root@hcss-ecs-4ce7:~# tree new
new
├── cpnew.txt
├── my.txt
├── new.txt
└── temp.txt#如果目标文件存在则直接覆盖
root@hcss-ecs-4ce7:~# cat cpnew.txt
你好世界
root@hcss-ecs-4ce7:~# echo "明天你好">new.txt
root@hcss-ecs-4ce7:~# cp new.txt cpnew.txt
root@hcss-ecs-4ce7:~# cat cpnew.txt
明天你好#拷贝前询问
root@hcss-ecs-4ce7:~# cp -i new.txt cpnew.txt
cp: overwrite 'cpnew.txt'? y#强制拷贝整个目录
root@hcss-ecs-4ce7:~# ls
cpnew.txt my.txt new new.txt path1 snap temp.txt
root@hcss-ecs-4ce7:~# tree new
new
├── cpnew.txt
├── my.txt
├── new.txt
└── temp.txt0 directories, 4 files
root@hcss-ecs-4ce7:~# cp -rf new cpnew
root@hcss-ecs-4ce7:~# ls
cpnew cpnew.txt my.txt new new.txt path1 snap temp.txt
root@hcss-ecs-4ce7:~# tree cpnew
cpnew
├── cpnew.txt
├── my.txt
├── new.txt
└── temp.txt0 directories, 4 files
mv指令
mv是move是缩写,代表移动。用于移动文件或将文件改名,常用于备份文件或目录。
语法:mv 选项 源文件或目录 目标文件或目录
功能:
1. 当mv指令的第一个参数和第二个参数都是文件或目录,将会进行重命名
2. 当mv指令第一个参数是文件,第二个参数是目录,将会进行移动,把文件移动至目录中
选项:
-f 强制覆盖, 如果当目标文件已经存在时,就会强制覆盖
-i 再覆盖前询问用户是否覆盖(仅在覆盖文件时询问,目录不会询问)
注意:对于重命名目录来说,并不会覆盖目录原来的内容。而是将源目录中的内容移动至目标目录中
#文件重命名
root@hcss-ecs-4ce7:~# ls
my.txt path1 snap temp.txt
root@hcss-ecs-4ce7:~# mv temp.txt new.txt
root@hcss-ecs-4ce7:~# ls
my.txt new.txt path1 snap#如果重命名文件在当前路径下已经存在,那么就会直接覆盖
root@hcss-ecs-4ce7:~# echo "你好世界">you.txt
root@hcss-ecs-4ce7:~# ls
my.txt new new.txt path snap you.txt
root@hcss-ecs-4ce7:~# mv you.txt my.txt
root@hcss-ecs-4ce7:~# ls
my.txt new new.txt path snap
root@hcss-ecs-4ce7:~# cat my.txt
你好世界#目录重命名(如果重命名目录在当前位置下已经存在,那么就会将源目录中内容移动至目标目录)
root@hcss-ecs-4ce7:~# ls
my.txt new.txt path1 snap
root@hcss-ecs-4ce7:~# tree path1
path1
├── myfile.txt
├── my.txt
└── path2├── myfile.txt└── path3└── path43 directories, 3 files
root@hcss-ecs-4ce7:~# mv path1 pathroot@hcss-ecs-4ce7:~# ls
my.txt new.txt path snap
root@hcss-ecs-4ce7:~# tree path
path
├── myfile.txt
├── my.txt
└── path2├── myfile.txt└── path3└── path43 directories, 3 files#移动文件到目录中
root@hcss-ecs-4ce7:~# ls
my.txt new.txt path snap
root@hcss-ecs-4ce7:~# mkdir newroot@hcss-ecs-4ce7:~# mv new.txt new
root@hcss-ecs-4ce7:~# ls
my.txt new path snap
root@hcss-ecs-4ce7:~# tree new
new
└── new.txt
相关文章:

【Linux】初见,基础指令
前言 本文将讲解Linux中最基础的东西-----指令,带大家了解一下Linux中有哪些基础指令,分别有什么作用。 本文中的指令和选项并不全,只介绍较为常用的 pwd指令 语法:pwd 功能:显示当前所在位置(路径…...

什么是实时流数据?核心概念与应用场景解析
在当今数字经济时代,实时流数据正成为企业核心竞争力。金融机构需要实时风控系统在欺诈交易发生的瞬间进行拦截;电商平台需要根据用户实时行为提供个性化推荐;工业物联网需要监控设备状态预防故障。这些场景都要求系统能够“即时感知、即时分…...

工业RTOS生态重构:从PLC到“端 - 边 - 云”协同调度
一、引言 在当今数字化浪潮席卷全球的背景下,工业领域正经历着深刻变革。工业自动化作为制造业发展的基石,其技术架构的演进直接关系到生产效率、产品质量以及企业的市场竞争力。传统的PLC(可编程逻辑控制器)架构虽然在工业控制领…...
数据结构与算法学习笔记(Acwing 提高课)----动态规划·状态机模型
数据结构与算法学习笔记----动态规划状态机模型 author: 明月清了个风 first publish time: 2025.5.20 ps⭐️背包终于结束了,状态机模型题目不多。状态机其实是一种另类的状态表示方法,将某一个点扩展为一个状态进行保存并在多个状态之间转移…...

基于开源链动2+1模式AI智能名片S2B2C商城小程序的社群构建与新型消费迎合策略研究
摘要:随着个性化与小众化消费的崛起,消费者消费心理和模式发生巨大变化,社群构建对商家迎合新型消费特点、融入市场经济发展至关重要。开源链动21模式AI智能名片S2B2C商城小程序的出现,为社群构建提供了创新工具。本文探讨该小程序…...

高性能RPC框架--Dubbo(五)
Filter: filter过滤器动态拦截请求(request)或响应(response)以转换或使用请求或响应中包含的信息。同时对于filter过滤器不仅适合消费端而且还适合服务提供端。我们可以自定义在什么情况下去使用filter过滤器 Activa…...
计算机视觉与深度学习 | PSO-MVMD粒子群算法优化多元变分模态分解(Matlab完整代码和数据)
以下是一个基于PSO优化多元变分模态分解(MVMD)的Matlab示例代码框架,包含模拟数据生成和分解结果可视化。用户可根据实际需求调整参数。 %% 主程序:PSO优化MVMD参数 clc; clear; close all;% 生成模拟多变量信号 fs = 1000; % 采样频率 t = 0:1/fs:...

搭建自己的语音对话系统:开源 S2S 流水线深度解析与实战
网罗开发 (小红书、快手、视频号同名) 大家好,我是 展菲,目前在上市企业从事人工智能项目研发管理工作,平时热衷于分享各种编程领域的软硬技能知识以及前沿技术,包括iOS、前端、Harmony OS、Java、Python等…...

feign调用指定服务ip端口
1 背景 在springcloud开发时候,同时修改了feign接口和调用方的代码,希望直接在某个环境调用修改的代码,而线上的服务又不希望被下线因为需要继续为其他访问页面的用户提供功能后端服务,有时候甚者包含你正在修改的功能。 2 修改…...

【深尚想!爱普特APT32F1023H8S6单片机重构智能电机控制新标杆】
在智能家电与健康器械市场爆发的今天,核心驱动技术正成为产品突围的关键。传统电机控制方案面临集成度低、开发周期长、性能瓶颈三大痛点,而爱普特电子带来的APT32F1023H8S6单片机无感三合一方案,正在掀起一场智能电机控制的技术革命。 爆款基…...
vue2 中的过滤器以及vue3中的替换方案
在 Vue 2 中,过滤器(filters) 是一种非常实用的语法糖,用于在模板中对数据进行格式化输出处理。我们来深入理解过滤器的原理、使用方式、最佳实践以及其局限性。 vue2 🧠 本质是什么? Vue 2 的过滤器是一…...

Unity EventCenter 消息中心的设计与实现
在开发过程中,想要传递信号和数据,就得在不同模块之间实现通信。直接通过单例调用虽然简单,但会导致代码高度耦合,难以维护。消息中心提供了一种松耦合的通信方式:发布者不需要知道谁接收事件,接收者不需要…...
瑞萨单片机笔记
1.CS for CC map文件中显示变量地址 Link Option->List->Output Symbol information 2.FDL库函数 pfdl_status_t R_FDL_Write(pfdl_u16 index, __near pfdl_u08* buffer, pfdl_u16 bytecount) pfdl_status_t R_FDL_Read(pfdl_u16 index, __near pfdl_u08* buffer, pfdl_…...
300. 最长递增子序列【 力扣(LeetCode) 】
文章目录 零、原题链接一、题目描述二、测试用例三、解题思路3.1 动态规划3.2 贪心 二分 四、参考代码4.1 动态规划4.2 贪心 二分 零、原题链接 300. 最长递增子序列 一、题目描述 给你一个整数数组 nums ,找到其中最长严格递增子序列的长度。 子序列 是由数组…...

MySQL远程连接10060错误:防火墙端口设置指南
问题描述: 如果你通过本机服务器远程连接MySQL,出现10060错误,那可能是你的防火墙的问题 解决: 第一步:查看防火墙规则 通过以下命令查询,看ports是否开放了3306端口,目前只开放了22端口 f…...

使用 OpenCV 实现 ArUco 码识别与坐标轴绘制
🎯 使用 OpenCV 实现 ArUco 码识别与坐标轴绘制(含Python源码) Aruco 是一种广泛用于机器人、增强现实(AR)和相机标定的方形标记系统。本文将带你一步一步使用 Python OpenCV 实现图像中多个 ArUco 码的检测与坐标轴…...
2024CCPC辽宁省赛 个人补题 ABCEGJL
Dashboard - 2024 CCPC Liaoning Provincial Contest - Codeforces 过题难度 B A J C L E G 铜奖 4 953 银奖 6 991 金奖 8 1664 B: 模拟题 // Code Start Here string s;cin >> s;reverse(all(s));cout << s << endl;A:很…...
#6 百日计划第六天 java全栈学习
今天学的啥 上午 算法byd图论 图遍历dfs bfs 没学懂呵呵 找到两个良心up 图码 labuladong 看算法还好 尚硅谷讲的太浅了 那你问我 下午呢 下午 java 看了会廖雪峰的教程 回顾基础 小林coding Java基础八股文 还有集合的八股文 有的不是很懂 今天把Java基础算是完…...
AOP的代理模式
AOP的代理模式 1. AOP的实现方式 Spring AOP 主要通过两种动态代理技术实现: JDK动态代理:基于接口的代理,要求目标类必须实现至少一个接口。通过反射机制在运行时生成代理类(实现目标接口),并重写接口…...
解决leetcode第3548题.等和矩阵分割II
3548.等和矩阵分割II 难度:困难 问题描述: 给你一个由正整数组成的mxn矩阵grid。你的任务是判断是否可以通过一条水平或一条垂直分割线将矩阵分割成两部分,使得: 分割后形成的每个部分都是非空的。 两个部分中所有元素的和相…...
深入解析自然语言处理中的语言转换方法
在数字化浪潮席卷全球的今天,自然语言处理(Natural Language Processing,NLP)作为人工智能领域的核心技术之一,正深刻地改变着我们与机器交互的方式。其中,语言转换方法更是 NLP 的关键组成部分,…...
redis 进行缓存实战-18
使用 Redis 进行缓存 Redis 通常被认为只是一个数据存储,但它的速度和内存中特性使其成为缓存的绝佳选择。缓存是一种技术,通过将经常访问的数据存储在快速的临时存储位置来提高应用程序性能。通过使用 Redis 作为缓存,您可以显著减少主数据…...
JFace中MVC的表的单元格编辑功能的实现
一、实现流程 在JFace中实现MVC模式的表格编辑功能通常需要以下步骤: 1、启用编辑模式: 调用TableVierer对象的setCellModifier()方法,设置一个ICellModifier对象,以便在表格中启用编辑模式。实现ICellModifier接口的canModify(…...
在 Excel xll 自动注册操作 中使用东方仙盟软件2————仙盟创梦IDE
// 获取当前工作表名称string sheetName (string)XlCall.Excel(XlCall.xlfGetDocument, 7);// 构造动态名称(例如:Sheet1!MyNamedCell)string fullName $"{sheetName}!MyNamedCell";// 获取引用并设置值var namedRange (ExcelRe…...

canal实现mysql数据同步
目录 1、canal下载 2、mysql同步用户创建和授权 3、canal admin安装和启动 4、canal server安装和启动 5、java 端集成监听canal 同步的mysql数据 6、java tcp同步只是其中一种方式,还可以通过kafka、rabbitmq等方式进行数据同步 1、canal下载 canal实现mysq…...
解决 MySQL 表结构修改中锁定异常的全链路实战指南:从表结构设计到版本调优
引言 在 MySQL 中执行ALTER TABLE修改表结构(如新增字段、调整字段类型)时,锁定异常是最常见的阻碍。无论是 5.7 的 “锁等待超时”、8.0 的 “MDL 锁阻塞”,还是高并发下的 “长事务死锁”,本质都是表结构修改需要获…...
动态规划应用场景 + 代表题目清单(模板加上套路加上题单)
1. 序列型DP(Sequence DP) ✅ 应用场景 单个或多个序列(数组/字符串),求最优子结构。 常见问题:最长递增子序列、最长公共子序列、回文子序列。 🧠 套路总结 单序列:dp[i] max(…...

易境通专线散拼系统:全方位支持多种专线物流业务!
在全球化电商快速发展的今天,跨境电商物流已成为电商运营中极为重要的环节。为了确保物流效率、降低运输成本,越来越多的电商卖家选择专线物流服务。专线物流作为五大主要跨境电商物流模式之一,通过固定的运输路线和流程,极大提高…...
nvm版本管理下pnpm 安装失败问题解决
检查当前使用的 Node.js 是否由 nvm 管理 nvm current 应显示类似 18.16.0 这样的版本号,而不是 system。如果是 system,说明你正在使用系统中其他位置的 Node.js 而不是 nvm 管理的版本。 切换回 nvm 管理的版本 nvm use 18.16.0清除 npm 缓存和全局安装…...
C++高频面试考点 -- 智能指针
C高频面试考点 – 智能指针 C11中引入智能指针的概念,方便堆内存管理。这是因为使用普通指针,容易造成堆内存泄漏,二次释放,程序发生异常时内存泄漏等问题。 智能指针在C11版本之后提供,包含在头文件<memory>中…...