Linux 虚拟机常用命令
一、文件/文件夹管理
1. ls命令
就是 list
的缩写,通过 ls
命令不仅可以查看 linux
文件夹包含的文件,而且可以查看文件权限(包括目录、文件夹、文件权限)查看目录信息等等。
ls -a 列出目录所有文件,包含以.开始的隐藏文件ls -A 列出除.及..的其它文件ls -r 反序排列ls -t 以文件修改时间排序ls -S 以文件大小排序ls -h 以易读大小显示ls -l 或 ll,除了文件名之外,还将文件的权限、所有者、文件大小等信息详细列出来
2. cd 命令
changeDirectory的缩写,作用是切换文件夹
(1)进入根目录cd /(2)进入"家"目录cd ~(3)进入上一次工作路径cd -(4)把上个命令的参数作为cd参数使用。cd !$(5)返回当前目录的上一级目录cd ..
拓展:家目录即用户的目录如root 用户目录,根目录则是最上层,即根目录包含家目录
3. pwd命令
查看当前所在目录的路径
(1)查看当前路径pwd(2)查看软链接的实际路径pwd -P
4. mkdir命令
创建文件夹
(1)在指定目录下创建文件夹,若这个指定目录不存在则报错mkdir 【文件夹路径+文件夹名】(2)在指定目录下创建文件夹,若这个指定目录不存在则 创建这个目录mkdir -p 【文件夹路径+文件夹名】
5. rmdir 命令
删除空文件夹,注意这个目录只能删除空文件夹
(1)删除一个空目录rmdir 【文件】(2)删除一个空目录,如果删除后使上级目录也为空,则一并删除rmdir -p【文件】
6. rm 命令
删除一个目录中的一个或多个文件或目录,如果没有使用 - r
选项,则 rm
不会删除目录。如果使用 rm
来删除文件,通常仍可以将该文件恢复原状 rm [选项] 文件
。
(1)删除任何.txt文件;删除前逐一询问确认rm -i *.txt(2)删除test子目录及子目录中所有档案删除,并且不用一一确认rm -rf test(3)删除以-k开头的文件rm -- -k*
7. mv 命令
移动文件或修改文件名,根据第二参数类型(如目录,则移动文件;如为文件则重命令该文件)。
当第二个参数为目录时,可刚多个文件以空格分隔作为第一参数,移动多个文件到参数2指定的目录中。
(1)将文件test.log重命名为test1.txtmv test.log test1.txt(2)将文件log1.txt,log2.txt,log3.txt移动到根的test3目录中mv llog1.txt log2.txt log3.txt /test3(3)将文件file1改名为file2,如果file2已经存在,则询问是否覆盖mv -i log1.txt log2.txt(4)移动当前文件夹下的所有文件到上一级目录mv * ../
8. find 命令
用于在文件树中查找文件,并作出相应的处理
命令格式:find pathname -options [-print -exec -ok ...]命令参数:pathname: find命令所查找的目录路径。例如用.来表示当前目录,用/来表示系统根目录。-print: find命令将匹配的文件输出到标准输出。-exec: find命令对匹配的文件执行该参数所给出的shell命令。相应命令的形式为'command' { } \;,注意{ }和\;之间的空格。-ok: 和-exec的作用相同,只不过以一种更为安全的模式来执行该参数所给出的shell命令,在执行每一个命令之前,都会给出提示,让用户来确定是否执行。命令选项:-name 按照文件名查找文件-perm 按文件权限查找文件-user 按文件属主查找文件-group 按照文件所属的组来查找文件。-type 查找某一类型的文件,诸如:b - 块设备文件d - 目录c - 字符设备文件l - 符号链接文件p - 管道文件f - 普通文件-size n :[c] 查找文件长度为n块文件,带有c时表文件字节大小-amin n 查找系统中最后N分钟访问的文件-atime n 查找系统中最后n*24小时访问的文件-cmin n 查找系统中最后N分钟被改变文件状态的文件-ctime n 查找系统中最后n*24小时被改变文件状态的文件-mmin n 查找系统中最后N分钟被改变文件数据的文件-mtime n 查找系统中最后n*24小时被改变文件数据的文件(用减号-来限定更改时间在距今n日以内的文件,而用加号+来限定更改时间在距今n日以前的文件。 )-maxdepth n 最大查找目录深度-prune选项来指出需要忽略的目录。在使用-prune选项时要当心,因为如果你同时使用了-depth选项,那么-prune选项就会被find命令忽略-newer 如果希望查找更改时间比某个文件新但比另一个文件旧的所有文件,可以使用-newer选项
9. cp 命令
将源文件复制至目标文件,或将多个源文件复制至目标目录。
注意:命令行复制,如果目标文件已经存在会提示是否覆盖,而在 shell
脚本中,如果不加 -i
参数,则不会提示,而是直接覆盖!
-i 提示-r 复制目录及目录内所有项目-a 复制的文件与原文件时间一样
10. touch 命令
创建一个或多个空文件
(1) 创建一个新的空文件
touch file.txt(2) 创建多个新的空文件
touch file1.txt file2.txt file3.txt
二、 系统管理
1. fdisk命令
fdisk命令是Linux操作系统中一个用于分区硬盘的命令行工具。它可以用来创建、删除、调整分区以及设置分区属性等操作
fdisk -l #查看系统分区信息#为一块新的SCSI硬盘进行分区
# 进入交互式分区工具(/dev/sda为示例)
fdisk /dev/sda# 创建新分区
n
# 按照提示设置分区大小和起始位置# 删除分区
d
# 选择要删除的分区号# 修改分区类型
t
# 选择要修改的分区号
# 按照提示选择新的分区类型# 保存分区表更改
w
2. chown命令
更改文件或目录的所有者(owner)的命令
帮助记忆:【change owner】
用法:
chown [选项] <新所有者> <文件/目录>
常用选项:
-
-R
递归地修改指定目录下的所有文件和子目录的所有者。 -
--reference=<参考文件/目录>
从参考文件/目录中获取所有者和所属组的信息,并应用到目标文件/目录上。
示例:
1.将文件file.txt的所有者改为root用户:
chown root file.txt
2.将目录dir1以及其子目录和文件的所有者改为user1:
chown -R user1 dir1
3.根据参考文件ref.txt的所有者和所属组信息,将目录dir2下的所有文件和子目录的所有者和所属组一致化:
chown --reference=ref.txt -R dir2
注意:使用chown命令需要具有足够的权限,一般需要以root用户或具有sudo权限的用户身份执行。
3. chgrp命令
改变文件或目录所属群组(group)的命令
帮助记忆:【change group】
用法:
chgrp [参数] [属组GID|属组名称] [文件|目录]
选项:
-R 递归处理,将指定目录下的所有文件及子目录一起更改
-v 显示命令执行过程
示例:
把文件ztj.sh属组由root更改为ztj
chgrp -v ztj ztj.sh
4. chmod 命令
改变linux
系统文件或目录的访问权限的命令
该命令有两种用法。一种是包含字母和操作符表达式的文字设定法;另一种是包含数字的数字设定法。
每一文件或目录的访问权限都有三组,每组用三位表示,分别为文件属主的读、写和执行权限;与属主同组的用户的读、写和执行权限;系统中其他用户的读、写和执行权限。可使用
ls -l 或 ll
查找
示例:
以文件log2012.log为例:-rw-r--r-- 1 root root 296K 11-13 06:03 log2012.log
第一列共有10个位置,第一个字符指定了文件类型。在通常意义上,一个目录也是一个文件。如果第一个字符是横线,表示是一个非目录的文件。如果是d,表示是一个目录。从第二个字符开始到第十个共9个字符,3个字符一组,分别表示了3组用户对文件或者目录的权限。权限字符用横线代表空许可,r代表只读,w代表写,x代表可执行。
常用参数:-c 当发生改变时,报告处理信息-R 处理指定目录以及其子目录下所有文件权限范围:u :目录或者文件的当前的用户g :目录或者文件的当前的群组o :除了目录或者文件的当前用户或群组之外的用户或者群组a :所有的用户及群组权限代号:r :读权限,用数字4表示w :写权限,用数字2表示x :执行权限,用数字1表示- :删除权限,用数字0表示s :特殊权限
示例:
(1)增加文件t.log所有用户可执行权限chmod a+x t.log(2)撤销原来所有的权限,然后使拥有者具有可读权限,并输出处理信息chmod u=r t.log -c(3)给file的属主分配读、写、执行(7)的权限,给file的所在组分配读、执行(5)的权限,给其他用户分配执行(1)的权限chmod 751 t.log -c(或者:chmod u=rwx,g=rx,o=x t.log -c)(4)将test目录及其子目录所有文件添加可读权限chmod u+r,g+r,o+r -R text/ -c
5. useradd命令
useradd命令是一个Linux系统中用于添加新用户的命令。
基本语法:useradd [选项] 用户名选项:-c, --comment COMMENT:设置用户描述信息-d, --home HOME_DIR:设置用户的主目录-e, --expiredate EXPIRE_DATE:设置账号的失效日期-f, --inactive INACTIVE:设置账号的非活动期限-g, --gid GROUP:设置用户所属的主要组-G, --groups GROUPS:设置用户所属的其他附加组-m, --create-home:创建用户的主目录-s, --shell SHELL:设置用户的登录Shell-k, --skel SKEL_DIR:指定用于创建用户家目录的骨架目录-p, --password PASSWORD:设置用户的密码-r, --system:创建系统账号-U, --user-group:同时创建与用户名同名的用户组-M, --no-create-home:不创建用户主目录
示例:
(1)创建一个名为"testuser"的新用户,并指定用户描述信息和主目录:useradd -c "Test User" -d /home/testuser testuser(2)创建一个新用户"devuser",并将其添加到"developers"组中:useradd -G developers devuser(3)创建一个系统账号"sysuser",并设置其主目录为"/var/sysuser":useradd -r -d /var/sysuser sysuser
6. groupadd命令
groupadd命令是用于在Linux系统中创建一个新的用户组的命令。
它的基本语法如下:groupadd [选项] 组名其中,选项可以包括:-g GID:指定新用户组的GID(组ID)。-o:允许新用户组的GID与已存在用户组的GID重复。-r:创建一个系统用户组。
示例:
例如,要创建一个名为"testgroup"的用户组,可以使用以下命令:groupadd testgroup
7. passwd命令
passwd命令是一个在Linux系统中用于更改用户密码的命令。它允许用户更改自己的密码或者管理员更改其他用户的密码。
如果你想要更改自己的密码,只需要在终端中输入passwd命令,然后按照提示输入当前密码和新密码即可。
如果你是管理员,想要更改其他用户的密码,需要使用sudo passwd <用户名>命令。其中"<用户名>"是你想要更改密码的用户的用户名。然后按照提示输入管理员密码和新密码即可。
常用选项:
-d 用户名 #删除用户密码也能登陆
-S 用户名 #查询账号密码
示例:
$ passwd
当前密码:*******
新的密码:*******
重新输入新的密码:*******
$ sudo passwd alice
[sudo] password for admin: ******
新的密码:*******
重新输入新的密码:*******
需要注意的是,passwd命令只能由管理员或用户本人执行,普通用户不能更改其他用户的密码。另外,为了保护账户安全,密码应该复杂且定期更换。
8. usermod命令
usermod
命令是用于修改用户账户的命令。它可以用来修改用户的用户名、用户ID、所属组、用户主目录、登录shell等信息。
使用usermod
命令需要管理员权限,具体使用方法如下:
(1)修改用户名:usermod -l new_username old_username示例:usermod -l user1 user2,将用户user2的用户名修改为user1。(2)修改用户ID:usermod -u new_user_id username示例:usermod -u 1001 user1,将用户名为user1的用户的用户ID修改为1001。(3)修改所属组:usermod -g group_name username示例:usermod -g group1 user1,将用户名为user1的用户的所属组修改为group1。(4)修改用户主目录:usermod -d new_home_directory username示例:usermod -d /home/user1 user1,将用户名为user1的用户的用户主目录修改为/home/user1。(5)修改用户登录shell:usermod -s new_login_shell username示例:usermod -s /bin/bash user1,将用户名为user1的用户的登录shell修改为/bin/bash。
注意:使用usermod命令修改用户信息时,需要谨慎操作,避免对系统造成影响或引起安全问题。
9. Userdel命令
userdel命令用于删除用户账户及其关联的用户组和用户主目录。当执行userdel命令时,用户账户将被标记为已删除,但用户主目录默认情况下不会被自动删除。
常用选项:
-r:删除用户账户及其用户主目录。使用此选项将同时删除用户主目录,确保用户的所有数据都被清除。-f:强制删除用户账户。即使用户当前登录,也会被强制删除。-Z:删除用户账户时,不会删除用户的安全上下文。
10. 系统服务控制操作
service [servicename] start/stop/restart 或
/etc/init.d/[servicename] start/stop/restart
11. 查看硬件信息
注意有些命令无法使用是因为没有下载该命令的插件
uname -a 查看内核版本
cat /etc/issue 查看ubuntu版本
lsusb 查看usb设备
sudo ethtool eth0 查看网卡状态
cat /proc/cpuinfo 查看cpu信息
lshw 查看当前硬件信息
sudo fdisk -l 查看磁盘信息
df -h 查看硬盘剩余空间
free -m 查看当前的内存使用情况
ps -A 查看当前有哪些进程
12. kill 命令
发送指定的信号到相应进程。不指定型号将发送SIGTERM(15)终止指定进程。如果任无法终止该程序可用“-KILL” 参数,其发送的信号为SIGKILL(9) ,将强制结束进程(即 kill -9),使用ps命令或者jobs 命令可以查看进程号。root用户将影响用户的进程,非root用户只能影响自己的进程。
常用选项:
-l 信号,若果不加信号的编号参数,则使用“-l”参数会列出全部的信号名称-a 当处理当前进程时,不限制命令名和进程号的对应关系-p 指定kill 命令只打印相关进程的进程号,而不发送任何信号-s 指定发送信号-u 指定用户
13. 重启和关闭 Linux 系统
reboot Init 6 或 reboot 或 shutdown -r now 重启LINUX系统
halt Init 0 Shutdown –h now 关闭LINUX系统
三、 打包/解压(tar)
tar命令
用来压缩和解压文件。tar本身不具有压缩功能,只具有打包功能,有关压缩及解压是调用其它的功能来完成。
弄清两个概念:打包和压缩。打包是指将一大堆文件或目录变成一个总的文件;压缩则是将一个大的文件通过一些压缩算法变成一个小文件。
常用参数:-c 建立新的压缩文件-f 指定压缩文件-r 添加文件到已经压缩文件包中-u 添加改了和现有的文件到压缩包中-x 从压缩包中抽取文件-t 显示压缩文件中的内容-z 支持gzip压缩-j 支持bzip2压缩-Z 支持compress解压文件-v 显示操作过程
gzip实例:压缩gzip fileName .tar.gz和.tgz 解压:gunzip filename.gz或gzip -d filename.gz对应:tar zcvf filename.tar.gz tar zxvf filename.tar.gzbz2实例:压缩bzip2 -z filename .tar.bz2 解压:bunzip filename.bz2或bzip -d filename.bz2对应:tar jcvf filename.tar.gz 解压:tar jxvf filename.tar.bz2
示例:
(1)将文件全部打包成tar包tar -cvf log.tar 1.log,2.log 或tar -cvf log.*(2)将/etc下的所有文件及目录打包到指定目录,并使用gz压缩tar -zcvf /tmp/etc.tar.gz /etc(3)查看刚打包的文件内容(一定加z,因为是使用gzip压缩的)tar -ztvf /tmp/etc.tar.gz(4)要压缩打包/home, /etc ,但不要 /home/dmtsaitar --exclude /home/dmtsai -zcvf myfile.tar.gz /home/* /etctar -c 创建包 –x 释放包 -v 显示命令过程 –z 代表压缩包
tar –cvf benet.tar /home/benet 把/home/benet目录打包
tar –zcvf benet.tar.gz /mnt 把目录打包并压缩
tar –zxvf benet.tar.gz 压缩包的文件解压恢复
tar –jxvf benet.tar.bz2 解压缩
四、 make 编译
1. make工具
人们通常利用 make 工具来自动完成编译工作
这些工作包括:如果仅修改了某几个源文件,则只重新编译这几个源文件
如果某个头文件被修改了,则重新编译所有包含该头文件的源文件
利用这种自动编译可大大简化开发工作,避免不必要的重新编译
2. make是如何工作的
1、make会在当前目录下找名字叫“Makefile”或“makefile”
2、如果找到,它会找文件中的第一个目标文件(target),在上面的例子中,他会找到“main”这个文件,并把这个文件作为最终的目标文件
3、如果main文件不存在,或是main所依赖的后面的 .o 文件的文件修改时间要比main这个文件新,那么,他就会执行后面所定义的命令来生成main这个文件
4、如果main所依赖的.o文件也存在,那么make会在当前文件中找目标为.o文件的依赖性,如果找到则再根据那一个规则生成.o文件
5、当然,你的C文件和H文件是存在的啦,于是make会生成 .o 文件,然后再用 .o 文件make的终极任务,也就是执行文件main了
注:如果DEPENDENCIES中有一个或多个文件更新的话,COMMAND就要执行,这就是Makefile最核心的内容
make 编译
make install 安装编译好的源码包
五、 apt命令
apt命令是一个Linux系统中常用的包管理工具,用于安装、更新、卸载软件。
示例:
apt-cache search package 搜索包
apt-cache show package 获取包的相关信息,如说明、大小、版本等
sudo apt-get install package 安装包
sudo apt-get install package - - reinstall 重新安装包
sudo apt-get -f install 修复安装”-f = –fix-missing”
sudo apt-get remove package 删除包
sudo apt-get remove package - - purge 删除包,包括删除配置文件等
sudo apt-get update 更新源
sudo apt-get upgrade 更新已安装的包
sudo apt-get dist-upgrade 升级系统
sudo apt-get dselect-upgrade 使用 dselect 升级
apt-cache depends package 了解使用依赖
apt-cache rdepends package 是查看该包被哪些包依赖
sudo apt-get build-dep package 安装相关的编译环境
apt-get source package 下载该包的源代码
sudo apt-get clean && sudo apt-get autoclean 清理无用的包
sudo apt-get check 检查是否有损坏的依赖
sudo apt-get clean 清理所有软件缓存(即缓存在/var/cache/apt/archives目录里的deb包)查看软件xxx安装内容 #dpkg -L xxx
查找软件 #apt-cache search 正则表达式
查找文件属于哪个包 #dpkg -S filename apt-file search filename
查询软件xxx依赖哪些包 #apt-cache depends xxx
查询软件xxx被哪些包依赖 #apt-cache rdepends xxx
增加一个光盘源 #sudo apt-cdrom add系统升级
#sudo apt-get update
#sudo apt-get upgrade
#sudo apt-get dist-upgrade清除所以删除包的残余配置文件
#dpkg -l |grep ^rc|awk ‘{print $2}’ |tr ["\n"] [" “]|sudo xargs dpkg -P -编译时缺少h文件的自动处理
#sudo auto-apt run ./configure查看安装软件时下载包的临时存放目录
#ls /var/cache/apt/archives备份当前系统安装的所有包的列表
#dpkg –get-selections | grep -v deinstall > ~/somefile从上面备份的安装包的列表文件恢复所有包
#dpkg –set-selections < ~/somefile sudo dselect清理旧版本的软件缓存
#sudo apt-get autoclean清理所有软件缓存
#sudo apt-get clean删除系统不再使用的孤立软件
#sudo apt-get autoremove查看包在服务器上面的地址
#apt-get -qq –print-uris install ssh | cut -d\’ -f2
相关文章:
Linux 虚拟机常用命令
一、文件/文件夹管理 1. ls命令 就是 list 的缩写,通过 ls 命令不仅可以查看 linux 文件夹包含的文件,而且可以查看文件权限(包括目录、文件夹、文件权限)查看目录信息等等。 ls -a 列出目录所有文件,包含以.开始的隐藏文件ls -A 列出除.…...

解决抖音semi-ui的Input无法获取到onChange事件
最近在使用semi-ui框架的Input实现一个上传文件功能时遇到了坑,就是无法获取到onChange事件,通过console查看只是拿到了一个文件名。但若是把<Input>换成原生的<input>,就可以正常获取到事件。仔细看了下官方文档,发现…...

免费的png打包plist工具CppTextu,一款把若干资源图片拼接为一张大图的免费工具
经常做游戏打包贴图的都知道,要把图片打包为一张或多张大图,要使用打包工具TexturePacker。 TexturePacker官方版可以直接导入PSD、SWF、PNG、BMP等常见的图片格式,主要用于网页、游戏和动画的制作,它可以将多个小图片汇聚成一个…...

深层次分析字符数组和字符串的区别是什么?
前言 (1)休闲时刻刷B站,看到一个卖课的,发视频问,char arr1[]{‘H’,‘E’,‘L’,‘L’,‘O’};和char arr2[]“HELLO”;区别是什么。 (2)看那个卖课博主一顿分析,最后成功得出&…...

Redis 的主从复制、哨兵模式、集群脑裂
主从复制 主从复制是 Redis 高可用服务最基础的保证,将一台 Redis 主服务器,同步数据到多台 Redis 从服务器上,即一主多从的模式,且主从服务器之间采用的是「读写分离」的方式。 主服务器可以进行读写操作,当发生写操…...

Pycharm通过SSH配置centos上Spark环境
直接在shell进行pyspark进行编程,程序没有办法写得太长,而且我们希望能够实现一个及时给出结果的编程环境,可以使用pycharm连接centos上的spark,进行本地编程,同步到centos系统中运行程序,并把结果返回pych…...
leetcode做题笔记98. 验证二叉搜索树
给你一个二叉树的根节点 root ,判断其是否是一个有效的二叉搜索树。 有效 二叉搜索树定义如下: 节点的左子树只包含 小于 当前节点的数。节点的右子树只包含 大于 当前节点的数。所有左子树和右子树自身必须也是二叉搜索树。 思路一:递归 …...
C# 中Lambda中的的匿名函数
/// <summary>/// 根据设备号,获取故障列表/// </summary>/// <param name"scanCode">主键</param>/// <returns></returns>[HttpGet]public async Task<IActionResult> GetItemPageList(string scanCode){//v…...

铰接式车辆的横向动力学仿真提供车辆模型研究(Matlab代码实现)
💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️座右铭&a…...

Ubuntu20 安装 libreoffice
1 更新apt-get sudo apt-get update2 安装jdk 查看jdk安装情况 Command java not found, but can be installed with:sudo apt install default-jre # version 2:1.11-72, or sudo apt install openjdk-11-jre-headless # version 11.0.138-0ubuntu1~20.04 sud…...

HTTP协议(JavaEE初阶系列15)
目录 前言: 1.HTTP协议 1.1HTTP协议是什么 1.2HTTP协议的报文格式 1.2.1抓包工具的使用 1.2.2HTTP请求 1.2.3HTTP响应 2.HTTP请求 2.1首行的组成 2.2.1URL的组成 2.2认识“方法”(method) 2.2.1GET方法 2.2.2POST方法 2.2.3GET…...
机器学习基础10-审查回归算法(基于波士顿房价的数据集)
上一节介绍了如何审查分类算法,并介绍了六种不同的分类算法,还 用同一个数据集按照相同的方式对它们做了审查,本章将用相同的方式对回归算法进行审查。 在本节将学到: 如何审查机器学习的回归算法。如何审查四种线性分类算法。如…...
基于 CentOS 7 构建 LVS-DR 群集。配置nginx负载均衡。
1、基于 CentOS 7 构建 LVS-DR 群集。 [root132 ~]# nmcli c show NAME UUID TYPE DEVICE ens33 c89f4a1a-d61b-4f24-a260-6232c8be18dc ethernet ens33 [root132 ~]# nmcli c m ens33 ipv4.addresses 192.168.231.200/24 [r…...

【云原生】Docker的数据管理(数据卷、容器互联)
目录 一、数据卷(容器与宿主机之间数据共享) 二、数据卷容器(容器与容器之间数据共享) 三、 容器互联(使用centos镜像) 总结 用户在使用Docker的过程中,往往需要能查看容器内应用产生的数据…...

使用vlc在线播放rtsp视频url
1. 2. 3. 工具链接: https://download.csdn.net/download/qq_43560721/88249440...

copy is all you need前向绘图 和疑惑标记
疑惑的起因 简化前向图 GPT4解释 这段代码实现了一个神经网络模型,包含了BERT、GPT-2和MLP等模块。主要功能是给定一个文本序列和一个查询序列,预测查询序列中的起始和结束位置,使其对应文本序列中的一个短语。具体实现细节如下:…...

【附安装包】Vred2023安装教程
软件下载 软件:Vred版本:2023语言:简体中文大小:2.39G安装环境:Win11/Win10/Win8/Win7硬件要求:CPU2.0GHz 内存4G(或更高)下载通道①百度网盘丨64位下载链接:https://pan.baidu.com…...
ASP.NET Core 中的 Dependency injection
依赖注入(Dependency Injection,简称DI)是为了实现各个类之间的依赖的控制反转(Inversion of Control,简称IoC )。 ASP.NET Core 中的Controller 和 Service 或者其他类都支持依赖注入。 依赖注入术语中&a…...

优化物料编码规则,提升物料管理效率
导 读 ( 文/ 2358 ) 物料是生产过程的必需品。对物料进行身份的唯一标识,可以更好的管理物料库存、库位,更方便的对物料进行追溯。通过编码规则的设计,可以对物料按照不同的属性、类别或特征进行分类,从而更好地进行库存分析、计划…...

Jetbrains IDE新UI设置前进/后退导航键
背景 2023年6月,Jetbrains在新发布的IDE(Idea、PyCharm等)中开放了新UI选项,我们勾选后重启IDE,便可以使用这一魔性的UI界面了。 但是前进/后退这对常用的导航键却找不到了,以前的设置方式(Vi…...

使用docker在3台服务器上搭建基于redis 6.x的一主两从三台均是哨兵模式
一、环境及版本说明 如果服务器已经安装了docker,则忽略此步骤,如果没有安装,则可以按照一下方式安装: 1. 在线安装(有互联网环境): 请看我这篇文章 传送阵>> 点我查看 2. 离线安装(内网环境):请看我这篇文章 传送阵>> 点我查看 说明:假设每台服务器已…...

基于距离变化能量开销动态调整的WSN低功耗拓扑控制开销算法matlab仿真
目录 1.程序功能描述 2.测试软件版本以及运行结果展示 3.核心程序 4.算法仿真参数 5.算法理论概述 6.参考文献 7.完整程序 1.程序功能描述 通过动态调整节点通信的能量开销,平衡网络负载,延长WSN生命周期。具体通过建立基于距离的能量消耗模型&am…...

Mybatis逆向工程,动态创建实体类、条件扩展类、Mapper接口、Mapper.xml映射文件
今天呢,博主的学习进度也是步入了Java Mybatis 框架,目前正在逐步杨帆旗航。 那么接下来就给大家出一期有关 Mybatis 逆向工程的教学,希望能对大家有所帮助,也特别欢迎大家指点不足之处,小生很乐意接受正确的建议&…...

全球首个30米分辨率湿地数据集(2000—2022)
数据简介 今天我们分享的数据是全球30米分辨率湿地数据集,包含8种湿地亚类,该数据以0.5X0.5的瓦片存储,我们整理了所有属于中国的瓦片名称与其对应省份,方便大家研究使用。 该数据集作为全球首个30米分辨率、覆盖2000–2022年时间…...

华为OD机试-食堂供餐-二分法
import java.util.Arrays; import java.util.Scanner;public class DemoTest3 {public static void main(String[] args) {Scanner in new Scanner(System.in);// 注意 hasNext 和 hasNextLine 的区别while (in.hasNextLine()) { // 注意 while 处理多个 caseint a in.nextIn…...

Java-41 深入浅出 Spring - 声明式事务的支持 事务配置 XML模式 XML+注解模式
点一下关注吧!!!非常感谢!!持续更新!!! 🚀 AI篇持续更新中!(长期更新) 目前2025年06月05日更新到: AI炼丹日志-28 - Aud…...

力扣热题100 k个一组反转链表题解
题目: 代码: func reverseKGroup(head *ListNode, k int) *ListNode {cur : headfor i : 0; i < k; i {if cur nil {return head}cur cur.Next}newHead : reverse(head, cur)head.Next reverseKGroup(cur, k)return newHead }func reverse(start, end *ListNode) *ListN…...

如何应对敏捷转型中的团队阻力
应对敏捷转型中的团队阻力需要明确沟通敏捷转型目的、提升团队参与感、提供充分的培训与支持、逐步推进敏捷实践、建立清晰的奖励和反馈机制。其中,明确沟通敏捷转型目的尤为关键,团队成员只有清晰理解转型背后的原因和利益,才能降低对变化的…...
xmind转换为markdown
文章目录 解锁思维导图新姿势:将XMind转为结构化Markdown 一、认识Xmind结构二、核心转换流程详解1.解压XMind文件(ZIP处理)2.解析JSON数据结构3:递归转换树形结构4:Markdown层级生成逻辑 三、完整代码 解锁思维导图新…...

aardio 自动识别验证码输入
技术尝试 上周在发学习日志时有网友提议“在网页上识别验证码”,于是尝试整合图像识别与网页自动化技术,完成了这套模拟登录流程。核心思路是:截图验证码→OCR识别→自动填充表单→提交并验证结果。 代码在这里 import soImage; import we…...