linux 软件安装(上)
一、基础环境准备
1.1、安装VM
1.2、在VM上导入linux iso镜像,装好linux系统
华为centos镜像下载地址
https://mirrors.huaweicloud.com/centos/
https://mirrors.huaweicloud.com/centos/7.9.2009/isos/x86_64/
网易centos镜像下载地址
http://mirrors.163.com/centos/7.9.2009/isos/x86_64/查看linux版本命令
1、cat /etc/redhat-release :CentOS Linux release 7.9.2009 (Core)
2、cat /etc/centos-release :CentOS Linux release 7.9.2009 (Core)查看linux内核命令
uname -r : 3.10.0-1160.62.1.el7.x86_64
1.3、配置网络
# vi /etc/sysconfig/network-scripts/ifcfg-ens33
TYPE="Ethernet"
PROXY_METHOD="none"
BROWSER_ONLY="no"
BOOTPROTO="none" #开启静态IP,也可用 static
IPADDR="192.168.136.161"
NETMASK="255.255.255.0" # 子网掩码
GATEWAY="192.168.136.2" # 网关地址
DNS1="114.114.114.114" # DNS服务器
DEFROUTE="yes"
IPV4_FAILURE_FATAL="no"
IPV6INIT="yes"
IPV6_AUTOCONF="yes"
IPV6_DEFROUTE="yes"
IPV6_FAILURE_FATAL="no"
IPV6_ADDR_GEN_MODE="stable-privacy"
NAME="ens33"
UUID="63d66e06-e7d7-45ff-ab0b-8e6dcaf912b9"
DEVICE="ens33"
ONBOOT="yes"
PREFIX="24"
IPV6_PRIVACY="NO"
1.4、安装linux插件
1、yum -y install net-tools --安装网络插件(ifconfig)
2、yum -y install vim --安装vim插件
3、yum -y install lrzsz --安装传输插件
4、yum -y install git --安装git
5、yum -y install tree --安装属性展示插件
6、yum -y install wget --安装下载插件
7、yum -y install unzip zip --安装zip压缩插件
zip -r myfile.zip ./* :将当前目录下的所有文件和文件夹全部压缩成myfile.zip文件,-r表示递归压缩
unzip -o -d /home/sunny myfile.zip : 把myfile.zip文件解压到 /home/sunny/目录下
-o:不提示的情况下覆盖文件;
-d:指明将文件解压缩到/home/sunny目录下
zip -d myfile.zip smart.txt:删除压缩文件中smart.txt文件
zip -m myfile.zip ./rpm_info.txt :向压缩文件中myfile.zip中添加rpm_info.txt文件
8、yum -y update --更新yum源
9、yum -y install lsof --安装lsof插件(查看端口占用)
1.5、yum源修复
方式一:
1、 CentOS7利用yum进行软件安装,报错:
There are no enabled repos. Run "yum repolist all" to see the repos you have
2、下载对应版本repo文件,如:CentOS7-Base-163.repo, 放入/etc/yum.repos.d/里
3、下载地址:http://mirrors.163.com/.help/centos.html
4、完成后,查看/etc/yum.repos.d文件夹下是否有了CentOS-Base.repo文件。
5、执行命令,生成缓存:
yum clean all
yum makecache
方式二:
1、先备份本地默认的yum源
cp /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo_bak
2、获取新的yum源,一般使用阿里或者网易的
1)、阿里
cd /etc/yum.repos.d/
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
2)、网易
cd /etc/yum.repos.d/
wget http://mirrors.163.com/.help/CentOS7-Base-163.repo
3、执行命令,生成缓存:
yum clean all
yum makecache
1.6、设置防火墙
关于防火墙: 要想在windows上能够访问,还需要开放防火墙的对应的端口,如mysql的3306端口
1)、查看防火墙状态
1、service firewalld status
2、systemctl status firewalld
3、firewall-cmd --state
2)、开放单个端口:
firewall-cmd --zone=public --add-port=3306/tcp --permanent
firewall-cmd --reload
3)、关闭单个端口:
firewall-cmd --zone=public --remove-port=8080/tcp --permanent
firewall-cmd --reload
4)、查看开放端口:
firewall-cmd --zone=public --list-ports
5)、完全关闭防火墙
systemctl stop firewalld #关闭防火墙
systemctl disable firewalld #禁用防火墙(禁止随系统自动启动)
6)、开启防火墙
systemctl start firewalld #开启防火墙
systemctl enable firewalld #启用防火墙(随系统自动启动)
1.7、常用命令
1、文件和目录命令
1)、退回上一级目录 cd .. |进入根目录 cd / |进入当前用户主目录cd ~
1、查看端口占用
linux: netstat -tunlp | grep 端口号
lsof -i:端口号 (需要root权限执行)【安装lsof:yum -y install lsof.*】
windows: netstat -ano | findstr 端口号
2、杀进程
linux: kill -9 进程ID
windows: tastkill /PID 进程ID /F
3、服务管理
service 【服务名称】 【start|restart|stop|status】
例子: service docker start
systemctl 【command】 【unit】 (command为命令,unit为服务名)
例子: systemctl enable docker
command命令还有如下:
start:立刻启动后面接的 unit。
stop:立刻关闭后面接的 unit。
restart:立刻关闭后启动后面接的 unit,亦即执行 stop 再 start 的意思。
reload:不关闭 unit 的情况下,重新载入配置文件,让设置生效。
enable:设置下次开机时,后面接的 unit 会被启动。
disable:设置下次开机时,后面接的 unit 不会被启动。
status:目前后面接的这个 unit 的状态,会列出有没有正在执行、开机时是否启动等信息。
is-active:目前有没有正在运行中。
is-enable:开机时有没有默认要启用这个 unit。
kill :不要被 kill 这个名字吓着了,它其实是向运行 unit 的进程发送信号。
show:列出 unit 的配置。
mask:注销 unit,注销后你就无法启动这个 unit 了。
unmask:取消对 unit 的注销。
4、wget :
wget命令用来从指定的URL下载文件。wget非常稳定,它在带宽很窄的情况下和不稳定网络中有很强的适应性,如果
是由于网络的原因下载失败,wget会不断的尝试,直到整个文件下载完毕。如果是服务器打断下载过程,它会再次联
到服务器上从停止的地方继续下载。
5、sed:
替换文本中的关键字
sed -i -e ‘s#需要被替换的关键字#目标关键字#g’ 文件名
6、查看进程
查看java进程:ps -ef|grep java
查看java进程名占用进程的进程id:pgrep java
查看指定进程id的运行目录:pwdx 54096
1.8、vim常用命令
1、进入vim:vim 文件名
2、进入编辑模式: 按 【i】
3、退出编辑模式: 按 【ESC】
4、保存退出vim: 输入 【:wq】
5、强制退出vim: 输入 【q!】
6、定位到第一行: 按 【gg 或 1G】
7、定位到最后一行: 按 【G】
8、定位到指定行: 输入 【指定行号G】
9、定位到行首: 按【0】
10、定位到行尾 按 【shift + 4】
11、撤销:按【u】
二、安装JDK
JDK下载地址:Java Downloads | Oracle
1、自己新建一个目录,用于存放和安装JDK:mkdir -p /root/install/jdk
2、使用linux自带sftp工具(alt+p)
从本机上传至linux命令 : put 文件夹路径
从linux上获取文件命令 : get 文件夹路径
或者使用lrzsz工具(yum -y install lrzsz)
从本机上传至linux命令 : rz (图形化界面,将文件上传至当前目录)
从linux上获取文件命令 : sz 文件夹路径
将JDK1.8的安装包上传至自己新建的目录
3、解压缩包: tar -zxvf jdk-8u171-linux-x64.tar.gz
4、编辑系统profile文件
vim /etc/profile
添加如下配置:
#set java environment
JAVA_HOME=/root/install/jdk/jdk1.8.0_171
JRE_HOME=/root/install/jdk/jdk1.8.0_171/jre
CLASS_PATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
export JAVA_HOME JRE_HOME CLASS_PATH PATH
5、刷新配置文件
source /etc/profile
6、验证
java -version
二、安装Tomcat
2.1、linux安装
1、将Tomcat的安装包上传至linux:/root/install/tomcat
2、进入tomcat目录进行解压:tar -zxvf apache-tomcat-7.0.57.tar.gz
3、启动tomcat:
cd /root/install/tomcat/apache-tomcat-7.0.57/bin
sh startup.sh或者./startup.sh
4、查看是否启动
1)、通过查看日志的形式:
tail -500f /root/install/tomcat/apache-tomcat-7.0.57/logs/catalina.out
2)、通过查看进程的方式:ps -ef|grep tomcat
5、可在tomcat的webapp中放入项目,如新建test文件夹,在其中放入index.html文件
6、访问:http://192.168.200.161:8080/mytest/index.html
2.2、docker安装
#1、搜索tomcat镜像
docker search tomcat#2、拉取tomcat镜像
docker pull tomcat:9.0#3、在/root目录下创建tomcat目录用于存储tomcat数据信息
mkdir ~/tomcat
cd ~/tomcat#4、进入tomcat目录 创建容器,设置端口映射、目录映射、自动启动
docker run -id \
-p 8081:8080 \
--name=tomcat9 \
--restart=always \
-v $PWD:/usr/local/tomcat/webapps \
tomcat:9.0#5、在tomcat目录下创建mytest目录,并新建index.html,写入文字
#6、访问 http://192.168.200.161:8081/mytest/index.html 进行测试
三、安装Mysql
3.1、linux安装
Mysql下载地址:https://downloads.mysql.com/archives/community/
https://dev.mysql.com/downloads/installer/
https://downloads.mysql.com/archives/installer/
1、卸载。下载完成之后,先不要急着安装。由于某些原因,在安装 MySQL 之前,可能电脑中已经有了安装过 MySQL 的痕迹,这可能会给下面 MySQL 的安装带来各种问题(如密码不能初始化、MySQL 执行失败等),因此首先需要先彻底清除电脑中与 MySQL 有关的任何文件。
rpm -qa 查询当前系统中安装的所有软件
rpm -qa | grep mariadb 查询当前系统中安装的名称带mariadb的软件
通过查询,发现在当前系统中存在mariadb数据库,是CentOS7中自带的,而这个数据库和MySQL数据库是冲突的, 所以要想保证MySQL成功安装,需要卸载mariadb数据库。
rpm中,卸载软件的语法为:rpm -e --nodeps 软件名称
卸载mariadb:
rpm -e --nodeps mariadb-libs-5.5.60-1.el7_5.x86_64
稳妥起见,用命令再次检测
1)、检查电脑里是否已经安装了 MySQL。输入以下命令来查看电脑中与 MySQL 有关的安装信息。
sudo yum list installed mysql*
2)、如果命令的输出什么也没有,那就无需卸载。如果有,则要输入以下命令来卸载:
sudo yum erase mysql*
3)、卸载通常不是万能的,还需要手动删除与 MySQL 有关的文件。输入以下命令来查找这种文件
sudo find / -name 'mysql*'
4)、输入以下命令来删除目录 /var/、/usr/、/etc/ 下的这些文件
sudo find /var /usr /etc -name "mysql*" -exec rm -r {} \;
5)、删除完成之后,再使用上面的查找命令,看看还能不能找到这些文件。
2、上传:将下载好的mysql rpm包上传至linux目录:/root/install/mysql3、解压:tar -zxvf mysql-5.7.25-1.el7.x86_64.rpm-bundle.tar.gz
4、安装:核心的安装包是 mysql-community-server。在普通情况下,使用命令 sudo yum localinstall mysql-community-server-8.0.26-1.el8.x86_64.rpm 即可。但在此处却不能这样做,因为 MySQL 的各个组成安装包之间有复杂的依赖关系,而 mysql-community-server 并不是依赖的起点,所以需要按依赖关系依次安装
rpm -ivh mysql-community-common-5.7.25-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-5.7.25-1.el7.x86_64.rpm
rpm -ivh mysql-community-devel-5.7.25-1.el7.x86_64.rpm
rpm -ivh mysql-community-libs-compat-5.7.25-1.el7.x86_64.rpm
rpm -ivh mysql-community-client-5.7.25-1.el7.x86_64.rpm
yum install net-tools
rpm -ivh mysql-community-server-5.7.25-1.el7.x86_64.rpm
但是,注意: 以下命令可以自动解析本目录下各安装包的依赖关系,并自动按顺序安装:
sudo yum -y localinstall *.rpm
5、验证
mysql --version
6、运行状态控制:MySQL安装完成之后,会自动注册为系统的服务,服务名为mysqld。那么,我们就可以通过systemctl指令来查看mysql的状态、启动mysql、停止mysql
systemctl status mysqld 查看mysql服务状态
systemctl start mysqld 启动mysql服务
systemctl stop mysqld 停止mysql服务
systemctl enable mysqld 开机自启
当然,还可以通过如下两种方式,来判定mysql是否启动:
netstat -tunlp 查看已经启动的服务
netstat -tunlp | grep mysql 查看mysql的服务信息
ps –ef | grep mysql 查看mysql进程
7、查看临时密码:rpm安装的mysql,在mysql第一次启动时,会自动帮我们生成root用户的访问密码,并且输出在mysql的日志文件 /var/log/mysqld.log,注意,该密码如果忘记,只能重新安装mysql
cat /var/log/mysqld.log | grep password8、登录
mysql -uroot -p'ZBrVGHWNk0(A'9、修改密码
查看密码强度设定:SHOW VARIABLES LIKE 'validate_password%';
修改密码强度:
set global validate_password_length=4; #密码长度最低位数,默认是8
set global validate_password_policy=LOW; #密码安全等级低,默认是MEDIUM,便于密码可以修改成root
set password = password('root'); #设置localhost user密码为root
也可用如下命令修改:
#设置指定user的密码为root
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '新密码'
#刷新权限
flush privileges;
10、开启远程访问权限
#也可用来修改指定用户密码
grant all on *.* to 'root'@'%' identified by 'root'; #注意:远程只能通过% Host访问
#或
update user set user.Host='%' where user.User='root';
#然后刷新权限
flush privileges;
11、连接验证
1)、 通过windwos cmd连接:
mysql -h 192.168.200.161 -P 3306 -uroot -proot
2)、通过客户端连接工具连接
通过某些客户端连接时,可能会报如下错:plugin caching sha2 password could not be loaded
原因是:客户端采用的密码认证方式落后了,现在8.0的mysql采用的sha2加密方式并没有更新到R包中,
因此需要更改mysql的指定用户的加密方式,拿wifi举例,等于现在用户设备不支持wap2加密,只能
用上一代的wap加密方式。
解决:修改mysql的加密方式
#修改加密规则
ALTER USER 'root'@'localhost' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER;
ALTER USER 'root'@'%' IDENTIFIED BY 'password' PASSWORD EXPIRE NEVER;
#更新用户的密码
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'root';
ALTER USER 'root'@'%' IDENTIFIED WITH mysql_native_password BY 'root';
#刷新权限
FLUSH PRIVILEGES;
#重置密码
#ALTER USER 'root'@'localhost' IDENTIFIED BY 'password';
12、设置开机自启
systemctl enable mysqld
13、修改msyql root密码
方法1: 用SET PASSWORD命令
首先登录MySQL,用如下命令查看数据库root用户密码情况:
SELECT `HOST`,`User`,`authentication_string` FROM mysql.user WHERE `User` = 'root'
#1、设置 localhost Host密码为root123 (localhost Host控制本机器连接)
#2、设置 % Host密码为root123 (% Host控制远程连接)
格式:mysql> set password for 用户名@Host = password('新密码');
例子:mysql> set password for root@localhost = password('root123');
mysql> set password for root@'%' = password('root123');
flush privileges;方法2:用mysqladmin 修改Host为localhost的用户密码
格式:mysqladmin -u用户名 -p旧密码 password 新密码
例子:mysqladmin -uroot -proot password root123 #设置localhost Host密码为root123
flush privileges;14、如果忘记mysql root密码
1)、停掉mysql服务 service mysqld stop
2)、修改/etc/my.cnf 文件,在mysqld下面 增加 skip-grant-tables ,作用是登陆是跳开密码校验
3)、启动mysql服务 service mysqld start
4)、登陆 mysql -u root
5)、修改密码(将密码修改为 root123 ) 依次执行以下操作
use mysql
#一并修改Host为%和Host为localhost的两个root用户密码为root123
update mysql.user set authentication_string=password('root123') where user='root'
flush privileges;
6)、/etc/my.cnf 文件删掉 skip-grant-tables
6)、重启mysql服务
service mysqld restart
3.2、docker 安装
#1、搜索mysql镜像
docker search mysql#2、拉取mysql镜像
docker pull mysql:8.0#3、在/root目录下创建mysql目录用于存储mysql数据信息
mkdir ~/install/docker/mysql
cd ~/install/docker/mysql#4、进入mysql目录 创建容器,设置端口映射、目录映射、自动启动
docker run -id \
-p 3307:3306 \
--name=mysql8 \
--restart=always \
-v $PWD/conf:/etc/mysql/conf.d \
-v $PWD/logs:/logs \
-v $PWD/data:/var/lib/mysql \
-e MYSQL_ROOT_PASSWORD=root \
mysql:8.0 \
--character-set-server=utf8mb4 \
--collation-server=utf8mb4_unicode_ci#5、进入容器,操作mysql
docker exec –it mysql /bin/bash#6、可使用mysql客户端连接mysql进行测试
相关文章:

linux 软件安装(上)
一、基础环境准备 1.1、安装VM 1.2、在VM上导入linux iso镜像,装好linux系统 华为centos镜像下载地址 https://mirrors.huaweicloud.com/centos/ https://mirrors.huaweicloud.com/centos/7.9.2009/isos/x86_64/ 网易centos镜像下载地址 htt…...

php虚拟站点提示No input file specified时的问题及权限处理方法
访问站点,提示如下 No input file specified. 可能是文件权限有问题,也可能是“.user.ini”文件路径没有配置对,最简单的办法就是直接将它删除掉,还有就是将它设置正确 #配置成自己服务器上正确的路径 open_basedir/mnt/qiy/te…...

【江协科技STM32】ADC数模转换器-学习笔记
ADC简介 ADC(Analog-Digital Converter)模拟-数字转换器ADC可以将引脚上连续变化的模拟电压转换为内存中存储的数字变量,建立模拟电路到数字电路的桥梁,ADC是一种将连续的模拟信号转换为离散的数字信号的设备或模块12位逐次逼近型…...

QT系列教程(20) Qt 项目视图便捷类
视频连接 https://www.bilibili.com/video/BV1XY41127t3/?vd_source8be9e83424c2ed2c9b2a3ed1d01385e9 Qt项目视图便捷类 Qt项目视图提供了一些便捷类,包括QListWidget, QTableWidget, QTreeWidget等。我们分别介绍这几个便捷类。 我们先创建一个Qt …...

git worktree的使用
git worktree 是 Git 提供的一个强大功能,允许你在同一个仓库中同时创建多个工作目录,每个目录对应一个分支,从而实现并行开发。以下是 git worktree 的常用命令和使用方法: 1. 创建新的工作目录(Worktree)…...

Spring Boot+RabbitMQ+Canal 解决数据一致性
目录大纲 一、环境配置1.1 docker-compose.yml 配置1.2 docker-compose 常用命令1.3 镜像服务启动状态 二、MySQL binlog 配置2.1 docker-compose command 配置 binlog2.2 创建canal用户,以及查看是否开启binlog 三、canal 相关配置文件3.1 canal.properties 完整文…...

Java高频面试之集合-08
hello啊,各位观众姥爷们!!!本baby今天来报道了!哈哈哈哈哈嗝🐶 面试官:详细说说CopyOnWriteArrayList CopyOnWriteArrayList 详解 CopyOnWriteArrayList 是 Java 并发包(java.util…...

C#实现高性能异步文件下载器(支持进度显示/断点续传)
一、应用场景分析 异步文件下载器用处很大,当我们需要实现以下功能时可以用的上: 大文件下载(如4K视频/安装包) 避免UI线程阻塞,保证界面流畅响应多任务并行下载 支持同时下载多个文件,提升带宽利用率后台…...

【数据分析】转录组基因表达的KEGG通路富集分析教程
禁止商业或二改转载,仅供自学使用,侵权必究,如需截取部分内容请后台联系作者! 文章目录 介绍差异分析(limma)KEGG富集分析(enrichKEGG)可视化加载R包数据下载导入数据基因差异分析火山图KEGG通路富集分析可视化通路结果另一个案例总结系统信息参考介绍 KEGG富集分析,可…...

【由技及道】API契约的量子纠缠术:响应封装的十一维通信协议(全局的返回结果封装)【人工智障AI2077的开发日志012】
摘要:在API通信的量子混沌中,30种返回格式如同平行宇宙的物理定律相互碰撞。本文构建的十一维通信协议,通过时空锚点(ApiResult)、量子过滤器(ResponseWrapper)和湮灭防护罩(Jackson…...

STM32 ——系统架构
3个被动单元 SRAM 存储程序运行时用到的变量 Flash(内部闪存存储器) 存储下载的程序 程序执行时用到的常量 桥接1和桥接2 AHB到APB的桥(AHBtoAPBx) 桥1 通过APB2总线连接到APB2上的外设。 高速外设,最高72MHz。 桥2 通过…...

算法 之 树形dp 树的中心、重心
文章目录 重心实践题目小红的陡峭值 在树的算法中,求解树的中心和重心是一类十分重要的算法 求解树的重心 树的重心的定义:重心是树中的一个节点,如果将这个点删除后,剩余各个连通块中点数的最大值最小,那么这个节点…...

如何利用 Excel 表格实现精准文件批量重命名教程
在处理大量文件时,有时需要根据特定规则对文件名进行调整。如果您的文件名和新名称之间存在一对多的关系,并且这种关系可以通过 Excel 表格来管理,那么使用“简鹿文件批量重命名”软件中的“匹配对应名称命名”功能将是一个高效的选择。接下来…...

ACE协议学习1
在多核系统或复杂SoC(System on Chip)中,不同处理器核心或IP(Intellectual Property)模块之间需要保持数据的一致性。常用的是ACE协议or CHI。 先对ACE协议进行学习 ACE协议(Advanced Microcontroller Bu…...

【实战ES】实战 Elasticsearch:快速上手与深度实践-5.1.1热点分片识别与均衡策略
👉 点击关注不迷路 👉 点击关注不迷路 👉 点击关注不迷路 文章大纲 5.1.1 Filebeat Logstash ES Kibana 全链路配置实1. 架构设计与组件选型1.1 技术栈对比分析1.2 硬件配置推荐 2. Filebeat 高级配置2.1 多输入源配置2.2 性能优化参数 3.…...

Kubernetes 的正式安装
1.基础的网络结构说明 软件路由器 ikuai 当然同一个仅主机模式 相当于在 同一个我们所谓的广播域内 所以相当于它们的几张网卡 是被连接起来的 为了防止出现问题 我们可以把第二块网卡临时关闭一下 2.准备路由器 ikuai 爱快 iKuai-商业场景网络解决方案提供商 (ikuai8.com)…...

初阶数据结构(C语言实现)——4.2队列
目录 2.队列2.1队列的概念及结构2.2队列的实现2.2.1 初始化队列2.2.2 销毁队列2.2.3 队尾入队列2.2.4 队头出队列2.2.5获取队列头部元素2.2.6 获取队列队尾元素2.2.7获取队列中有效元素个数2.2.8 检测队列是否为空,如果为空返回非零结果,如果非空返回0 3…...

Mysql主从复制和Mysql高可用以及负载均衡配置
需要先配置MySQL主从复制,然后再在主MySQL服务器上配置MySQL Router。以下是详细说明和步骤: 1. 为什么需要先配置MySQL主从复制? MySQL主从复制是MySQL高可用性和负载均衡的基础,通过将数据从主服务器实时同步到从服务器&#…...

c#中使用时间戳转换器
在C#中,时间戳转换器通常用于将时间戳(通常是一个表示自某一特定时间点(如1970年1月1日UTC)以来的毫秒数的长整型值)转换为DateTime对象,或者将DateTime对象转换回时间戳。以下是几种实现这一功能的方法: 1. 使用DateTime的构造函数 将时间戳转换为DateTime long tim…...

杂项知识笔记搜集
1.pygame pygame可以画出来图形界面,pygame Python仓库 PyGame游戏编程_游戏程序设计csdn-CSDN博客 2.V4L2库 V4L2是Linux上的Camera采集器的框架 Video for Linux ,是从Linux2.1版本开始支持的。HDMI视频采集卡采集到的视频通过USB3.0输出࿰…...

rust语言match模式匹配涉及转移所有权Error Case
struct S{data:String, }//注意:因为String默认是移动语义,从而决定结构体S也是移动语义,可采用(1)或(2)两种方法解决编译错误;关键思路:放弃获取结构体S的字段data的所有权,改为借用。fn process(s_ref:&a…...

golang从入门到做牛马:第十一篇-Go语言变量作用域:变量的“生活圈”
在Go语言中,变量的作用域决定了它在程序中的可见性和生命周期。理解变量的作用域对于编写清晰、高效的代码至关重要。Go语言中的变量可以在三个主要地方声明:函数内、函数外和函数定义中。接下来,让我们深入探讨局部变量、全局变量和形式参数的作用域。 局部变量:函数内的“…...

【Linux】37.网络版本计算器
文章目录 1. Log.hpp-日志记录器2. Daemon.hpp-守护进程工具3. Protocol.hpp-通信协议解析器4. ServerCal.hpp-计算器服务处理器5. Socket.hpp-Socket通信封装类6. TcpServer.hpp-TCP服务器框架7. ClientCal.cc-计算器客户端8. ServerCal.cc-计算器服务器9. 代码时序1. 服务器启…...

linux安装Mariadb10.5并修改端口
首先配置yum源 进入下方的文件进行配置 vim /etc/yum.repos.d/MariaDB.repo填写下方内容 [mariadb]name MariaDBbaseurl https:///mirrors.aliyun.com/mariadb/yum/10.5/centos8-amd64/gpgkeyhttps:///mirrors.aliyun.com/mariadb/yum/RPM-GPG-KEY-MariaDBmodule_hotfixes…...

从Windows到ARM Linux:Qt程序的交叉编译与移植指南
引言 在嵌入式开发中,我们经常需要将桌面端开发的Qt程序部署到ARM架构的Linux设备。本文详细介绍如何将Windows平台开发的Qt程序,通过Linux虚拟机交叉编译为ARM架构可执行文件的完整过程 环境准备 需要特别注意的是,对于CentOS 7 默认支持…...

【微信小程序】uniapp开发微信小程序
uniapp开发微信小程序 1、上拉加载 下拉刷新 import { onReachBottom, onPullDownRefresh } from dcloudio/uni-app;配置允许下拉刷新: {"path" : "pages/pet/pet","style" : {"navigationBarTitleText" : ""…...

多视图几何--结构恢复--三角测量
三角测量 1. 核心公式推导 假设两个相机的投影矩阵为 P P P 和 P ′ P P′,对应的匹配图像点(同名点)为 ( u , v ) (u, v) (u,v) 和 ( u ′ , v ′ ) (u, v) (u′,v′),目标是求解三维点 X [ X x , X y , X z , 1 ] T X [X_x, X_y, X_z, 1]^T X…...

【Linux三剑客】awk命令使用
AWK 编程语言中的变量 AWK 提供了许多可在模式和操作中使用的内置变量。最常用的变量是 - NR - 表示当前记录(行)号 NF - 表示输入记录中的字段总数。 $0 - 整个当前记录。 $1, $2, $3, … - 当前记录中的第一个、第二个、第三个…字段。 查找passwd中…...

Python CATIA二次开发实战:CATIA产品号批量同步文件名工具开发
引言 在汽车/航空制造领域,CATIA文件的结构化管理直接影响着PLM系统数据一致性。笔者近期开发的增强型产品号同步工具,成功解决了工程实践中文件名与产品名称不同步的痛点问题。本文将从技术实现、功能亮点、应用场景三个维度进行深度解析。 一、技术方…...

我的两个医学数据分析技术思路
我的两个医学数据分析技术思路 从临床上获得的或者公共数据库数据这种属于观察性研究,是对临床诊疗过程中自然产生的数据进行分析而获得疾病发生发展的规律等研究成果。再细分,可以分为独立危险因素鉴定和预测模型构建两种。 独立危险因素鉴定是一直以…...