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

Linux实用命令练习

目录

一、常用命令

二、系统命令

三、用户和组

四、权限

五、文件相关命令

六、查找

七、正则表达式

八、输入输出重定向

九、进程控制

十、其他命令

1、远程文件复制:scp

2、locate查找

3、which命令

4、设置或显示环境变量:export

5、修改主机名&ip地址

十一、yum安装命令

十二、rpm

十三、Linux的基本配置

十四、关闭防火墙

1、暂时关闭防火墙

2、如何查看自己的防火墙属于 iptables 还是 firewalld

3、永久关闭防火墙(通过命令)


一、常用命令

1、在/hadoop目录下创建src和WebRoot两个文件夹 

        分别创建:mkdir /hadoop/src  mkdir /hadoop/WebRoot 

        同时创建:mkdir /hadoop/{src,WebRoot}

2、进入到/hadoop目录,在该目录下创建.classpath和README文件 

        分别创建:touch .classpath  touch README 

        同时创建:touch {.classpath,README}

3、在/hadoop目录下面创建一个test.txt文件,同时写入内容"this is test" 

        echo "this is test" > test.txt

4、向README文件追加写入"please read me first" 

        echo "please read me first" >> README

5、将test.txt的内容追加到README文件中 

        cat test.txt >> README

6、进入到/hadoop-bak目录,将test.txt移动到src目录下,并修改文件名为Student.java 

        mv test.txt src/Student.java

7、在src目录下创建一个struts.xml

> struts.xml

8、返回到/hadoop目录,查看一下README文件有多单词,多少个少行 

        wc -w README 

        wc -l README

9、返回到根目录,将/hadoop目录先打包,再用gzip压缩 

        分步完成:tar -cvf hadoop.tar hadoop  gzip hadoop.tar 

        一步完成:tar -zcvf hadoop.tar.gz hadoop 

10、将其解压缩,再取消打包 

        分步完成:gzip -d hadoop.tar.gz 或 gunzip hadoop.tar.gz 

        一步完成:tar -zxvf hadoop.tar.gz

二、系统命令

1、查看主机名
        hostname
2、查看系统信息
        uname -a
        uname -r
3、日期
        date
        date +%Y-%m-%d
        date +%T
        date +%Y-%m-%d" "%T
4、日历
        cal 2012
5、查看文件信息
        file filename
6、查看文件大小
        du -h
        du -ah
7、查看分区
        df -h
8、关机
        shutdown -h now /init 0
        shutdown -r now /reboot

三、用户和组

1、添加一个tom用户,设置它属于users组,并添加注释信息
        分步完成:useradd tom
                          usermod -g users tom
                          usermod -c "hr tom" tom
        一步完成:useradd -g users -c "hr tom" tom

2、添加一个jerry用户并设置密码
        useradd jerry
        passwd jerry

四、权限

1、创建c.txt文件所有人都可以写和执行
        chmod 666 c.txt

2、将/hadoop目录下的所有文件与子目录的拥有者设为root,用户拥有组为users
        chown -R root:users /hadoop

3、将当前目录下的所有文件与子目录的用户皆设为hadoop,组设为users
        chown -R hadoop:users *

五、文件相关命令

1、移动
        mv a.txt /ect/
      改名
        mv b.txt a.txt
      移动并改名
        mv a.txt ../b.txt

2、拷贝并改名
        cp a.txt /etc/b.txt

3、将一个文件的内容复制到里另一个文件中
        cat a.txt > b.txt
     追加内容
        cat a.txt >> b.txt

4、将所有的java语言程式拷贝至finished子目录中:
        cp *.java finished

六、查找

1.查找可执行的命令:
        which ls

2.查找可执行的命令和帮助的位置:
        whereis ls

3.查找文件(需要更新库:updatedb)
        locate hadoop.txt

4.从某个文件夹开始查找
        find  -name "hadooop*"
        find  -name "hadooop*" -ls

5.查找并删除
        find / -name "hadooop*" -ok rm {} \;
        find / -name "hadooop*" -exec rm {} \;

6.查找用户为hadoop的文件
        find /usr -user hadoop -ls

7.查找用户为hadoop并且(-a)拥有组为root的文件
        find /usr -user hadoop -a -group root -ls

8.查找用户为hadoop或者(-o)拥有组为root并且是文件夹类型的文件
        find /usr -user hadoop -o -group root -a -type d

9.查找权限为777的文件
        find / -perm -777 -type d -ls

10.显示命令历史
        history

11.grep
        grep hadoop /etc/password

七、打包与压缩

1.gzip压缩
        gzip a.txt

2.解压
        gunzip a.txt.gz
        gzip -d a.txt.gz

3.bzip2压缩
        bzip2 a

4.解压
        bunzip2 a.bz2
        bzip2 -d a.bz2

5.将当前目录的文件打包
        tar -cvf bak.tar .
        将/etc/password追加文件到bak.tar中(r)
t        ar -rvf bak.tar /etc/password

6.解压
        tar -xvf bak.tar

7.打包并压缩gzip
        tar -zcvf a.tar.gz

8.解压缩
        tar -zxvf a.tar.gz
        解压到/usr/下
        tar -zxvf a.tar.gz -C /usr

9.查看压缩包内容
        tar -ztvf a.tar.gz

        zip/unzip

10.打包并压缩成bz2
        tar -jcvf a.tar.bz2

11.解压bz2
        tar -jxvf a.tar.bz2

七、正则表达式

规则:
.  : 任意一个字符
a* : 任意多个a(零个或多个a)
a? : 零个或一个a
a+ : 一个或多个a
.* : 任意多个任意字符
\. : 转义.
\<h.*p\> :以h开头,p结尾的一个单词
o\{2\} : o重复两次

grep '^i.\{18\}n$' /usr/share/dict/words

查找不是以#开头的行
grep -v '^#' a.txt | grep -v '^$'

以h或r开头的
grep '^[hr]' /etc/passwd

不是以h和r开头的
grep '^[^hr]' /etc/passwd

不是以h到r开头的
grep '^[^h-r]' /etc/passwd

八、输入输出重定向

1.新建一个文件
        touch a.txt
        > b.txt

2.错误重定向:2>
        find /etc -name zhaoxing.txt 2> error.txt

3.将正确或错误的信息都输入到log.txt中
        find /etc -name passwd > /tmp/log.txt 2>&1
        find /etc -name passwd &> /tmp/log.txt

4.追加>>

5.将小写转为大写(输入重定向)
        tr "a-z" "A-Z" < /etc/passwd

6.自动创建文件
        cat > log.txt << EXIT
        > ccc
        > ddd
        > EXI

7.查看/etc下的文件有多少个?
        ls -l /etc/ | grep '^d' | wc -l

8.查看/etc下的文件有多少个,并将文件详情输入到result.txt中
        ls -l /etc/ | grep '^d' | tee result.txt | wc -l

九、进程控制

1.查看用户最近登录情况
        last
        lastlog

2.查看硬盘使用情况
        df

3.查看文件大小
        du

4.查看内存使用情况
        free

5.查看文件系统
        /proc

6.查看日志
        ls /var/log/

7.查看系统报错日志
        tail /var/log/messages

8.查看进程
        top

9.结束进程
        kill 1234
        kill -9 4333

十、其他命令

1、远程文件复制:scp

scp 命令用于 Linux 之间复制文件和目录,scp是 secure copy 的缩写是linux系统下基于ssh登陆进行安全的远程文件拷贝命令。

scp 是加密的,rcp 是不加密的,scp 是 rcp 的加强版。

使用scp命令要确保使用的用户具有可读取远程服务器相应文件的权限,否则scp命令是无法起作用的。

复制文件
scp local_file remote_username@remote_ip:remote_folder 
或者 
scp local_file remote_username@remote_ip:remote_file 
或者 
scp local_file remote_ip:remote_folder 
或者 
scp local_file remote_ip:remote_file复制文件夹
scp -r local_folder remote_username@remote_ip:remote_folder 
或者 
scp -r local_folder remote_ip:remote_folder 

实例:

scp /home/space/music/1.mp3 root@xiaoxiaoming.xyz:/home/root/others/music 
scp /home/space/music/1.mp3 root@xiaoxiaoming.xyz:/home/root/others/music/001.mp3 
scp /home/space/music/1.mp3 xiaoxiaoming.xyz:/home/root/others/music 
scp /home/space/music/1.mp3 xiaoxiaoming.xyz:/home/root/others/music/001.mp3scp -r /home/space/music/ root@xiaoxiaoming.xyz:/home/root/others/ 
scp -r /home/space/music/ xiaoxiaoming.xyz:/home/root/others/ 

2、locate查找

locate命令会去保存文档和目录名称的数据库内,查找文件或目录。

一般情况我们只需要输入locate your_file_name 即可查找指定文件。

参数:

    -d或–database= 配置locate指令使用的数据库。locate指令预设的数据库位于/var/lib/mlocate目录里,文档名为mlocate.db。
查找passwd文件,输入以下命令:

locate passwd

locate与find的区别: find 是去硬盘找,locate 只在/var/lib/slocate资料库中找。

locate的速度比find快,它并不是真的查找,而是查数据库,一般文件数据库在/var/lib/mlocate/mlocate.db中,所以locate的查找并不是实时的,而是以数据库的更新为准,一般是系统自己维护,也可以手工升级数据库 ,命令为:
 

updatedb

3、which命令

which查找$PATH中设置命令及安装文件目录所在位置

python@ubuntu:/var/lib/mlocate$ which locate
/usr/bin/locate

4、设置或显示环境变量:export

在 shell 中执行程序时,shell 会提供一组环境变量。export 可新增,修改或删除环境变量,供后续执行的程序使用。export 的效力仅限于该次登陆操作。

export [-fnp][变量名称]=[变量设置值]
# export MYENV=7 //定义环境变量并赋值
# export -p //列出当前的环境变量

5、修改主机名&ip地址

显示主机名:hostname

临时修改:hostname xxx

永久修改:

                对于Ubuntu 系统:vim /etc/hostname

                对于centos系统:vim /etc/sysconfig/network

                在此配置文件中添加一条HOSTNAME=node1

                针对centos7系统,可以使用如下命令

                        hostnamectl set-hostname xxx

                一般需要重开shell甚至重启操作系统才能生效。

十一、yum安装命令

        yum( Yellow dog Updater, Modified)是一个在Fedora和RedHat以及SUSE中的Shell前端软件包管理器。

        基於RPM包管理,能够从指定的服务器自动下载RPM包并且安装,可以自动处理依赖性关系,并且一次安装所有依赖的软体包,无须繁琐地一次次下载、安装。

        yum提供了查找、安装、删除某一个、一组甚至全部软件包的命令,而且命令简洁而又好记。
更新国内yum源,网易(163)yum源是国内最好的yum源之一 ,无论是速度还是软件版本,都非常的不错。将yum源设置为163 yum,可以提升软件包安装和更新的速度,同时避免一些常见软件版本无法找到。

首先备份/etc/yum.repos.d/CentOS-Base.repo

mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup

下载对应版本 repo 文件, 放入 /etc/yum.repos.d/

    CentOS5 :http://mirrors.163.com/.help/CentOS5-Base-163.repo
    CentOS6 :http://mirrors.163.com/.help/CentOS6-Base-163.repo
    CentOS7 :http://mirrors.163.com/.help/CentOS7-Base-163.repo

wget http://mirrors.163.com/.help/CentOS7-Base-163.repo
mv CentOS7-Base-163.repo /etc/yum.repos.d/CentOS-Base.repo

运行以下命令生成缓存

yum clean all
yum makecache

实例:

    列出所有可更新的软件清单命令:yum check-update
    更新所有软件命令:yum update
    仅安装指定的软件命令:yum install <package_name>
    仅更新指定的软件命令:yum update <package_name>
    显示包信息:yum info <package_name>
    列出所有可安裝的软件清单命令:yum list
    删除软件包命令:yum remove <package_name>
    查找软件包 命令:yum search <keyword>
    清除缓存命令:
        yum clean packages: 清除缓存目录下的软件包
        yum clean headers: 清除缓存目录下的 headers
        yum clean oldheaders: 清除缓存目录下旧的 headers
        yum clean, yum clean all (= yum clean packages; yum clean oldheaders) :清除缓存目录下的软件包及旧的headers

十二、rpm

RPM是Red Hat公司随Redhat Linux推出了一个软件包管理器,通过它能够更加轻松容易地实现软件的安装。

常见用法:

    rpm -ivh <rpm包名> 安装软件
    rpm -e <rpm包名> 卸载安装
    rpm -qi <rpm包名> 显示软件安装信息
    rpm -qa | grep xxx 查询软件是否安装(包括相关依赖)
    rpm -Uvh <rpm包名> 升级一个rpm

具体参数详解:
-i, --install 安装包
-v, --verbose 列出更多详细信息,安装进度
-h, --hash 安装时列出hash标记 (与 -v连用)
-e, --erase 卸载安装包
-U, --upgrade=+ 升级包
–replacepkge 无论软件包是否已被安装,都强行安装软件包
–test 安装测试,并不实际安装
–nodeps 忽略软件包的依赖关系强行安装
–force 忽略软件包及文件的冲突
-q,–query:
-a, --all 查询/校验所有的安装包
-p, --package 查询/校验一个安装文件
-l, --list 列出安装文件
-d, --docfiles 列出所有文档文件
-f, --file 查询/校验安装包中所包含的文件

# rpm -hvi dejagnu-1.4.2-10.noarch.rpm 
警告:dejagnu-1.4.2-10.noarch.rpm: V3 DSA 签名:NOKEY, key ID db42a60e
准备...           
########################################### [100%]
# rpm -qi dejagnu-1.4.2-10.noarch.rpm【第1次更新 教程、类似命令关联】

十三、Linux的基本配置

1.修改主机名

vi /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=hadoop1

2.修改ip地址

vi /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
TYPE=Ethernet
ONBOOT=yes
BOOTPROTO=static
IPADDR=192.168.100.101
NETMASK=255.255.255.0service network restart

3.修改ip地址和主机名的映射关系

vi /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
192.168.100.101 hadoop1

关闭iptables并设置其开机启动/不启动

service iptables stop
chkconfig iptables on
chkconfig iptables off

十四、关闭防火墙

1、暂时关闭防火墙

禁⽤防⽕墙 :

systemctl stop firewalld

启动/关闭防火墙:
查看firewalld状态:

systemctl status firewalld    #查看防火墙状态

显示running,既防火墙开启了

2、如何查看自己的防火墙属于 iptables 还是 firewalld

sudo firewall-cmd --state 

iptables防火墙,则会出现内容:

iptables: Firewall is not running.
iptables: Firewall is running.            //如果启动了会出现这个

firewalld 防火墙,则会出现内容:

[root@bedo19c /]# sudo firewall-cmd --state 
running

3、永久关闭防火墙(通过命令)

1、对于 iptables 防火墙:

sudo service iptables stop
sudo chkconfig iptables off

2、对于 firewalld 防火墙:

sudo systemctl stop firewalld
sudo systemctl disable firewalld

3、永久关闭防火墙(通过配置文件):

1、对于 iptables 防火墙:
然后将文件中的所有规则都删除,保存并退出文件。这将完全禁用 iptables 防火墙。

sudo vi /etc/sysconfig/iptables

2、对于 firewalld 防火墙:

在该文件中找到 Enabled 字段,并将其值从 yes 修改为 no。然后保存并退出文件。这将完全禁用 firewalld 防火墙

sudo vi /etc/firewalld/firewalld.conf

相关文章:

Linux实用命令练习

目录 一、常用命令 二、系统命令 三、用户和组 四、权限 五、文件相关命令 六、查找 七、正则表达式 八、输入输出重定向 九、进程控制 十、其他命令 1、远程文件复制&#xff1a;scp 2、locate查找 3、which命令 4、设置或显示环境变量&#xff1a;export 5、修…...

刷题——二叉搜索树与双向链表

二叉搜索树与双向链表_牛客题霸_牛客网 方法一&#xff1a; void dfs(TreeNode* pRootOfTree, TreeNode* &pre){if(pRootOfTree NULL)return;dfs(pRootOfTree->left, pre);//所有左子树if(pre)pre->right pRootOfTree;pRootOfTree->left pre;pre pRootOfTree…...

【Linux】进程优先级 | 环境变量

目录 Ⅰ. 进程优先级&#xff08;Process Priority&#xff09; 1. 什么是进程优先级&#xff1f; 2. 查看系统进程 3. 修改进程优先级 4.优先级调度原理 Ⅱ. 进程的切换&#xff08;Process Switch&#xff09; 1. 竞争与独立 2. 并行与并发 3. 进程抢占 4.实现切换…...

最新手动迁移WordPress方法

手动迁移WordPress网站主要步骤有&#xff1a;迁移文件、迁移数据库、修复数据库连接。 对于WordPress Installations&#xff0c;只有两个主要组件&#xff0c;您需要访问手动将安装迁移到新主机&#xff1a;文件和数据库。 迁移文件 将文件从旧主机迁移到新的最简单方法之…...

ChatGPT在程序开发中的应用:提升生产力的秘密武器

在当今飞速发展的科技时代&#xff0c;程序开发已经成为许多企业和个人必不可少的技能。然而&#xff0c;编写代码并非总是顺风顺水&#xff0c;面对复杂的算法、繁琐的调试、持续不断的需求变更&#xff0c;程序员们常常感到压力山大。在这种情况下&#xff0c;ChatGPT应运而生…...

AI与Python共舞:如何利用深度学习优化推荐系统?

AI与Python共舞&#xff1a;如何利用深度学习优化推荐系统&#xff1f; 当你在浏览新闻、电影或是购物平台时&#xff0c;那些仿佛读懂你心思的个性化推荐背后&#xff0c;正是AI技术与Python语言的精妙协作。今天&#xff0c;我们将通过一个实际案例&#xff0c;探索如何利用…...

URLSearchParams: 浏览器中的查询字符串处理利器

一、 概述 在Web开发中&#xff0c;处理URL的查询字符串是一个常见任务。URLSearchParams API 提供了一种简单而强大的方法来处理Web URL的查询参数。它是一个内置的浏览器API&#xff0c;允许你以名称/值对的形式轻松地创建、读取、更新和删除查询参数。 二、URLSearchParam…...

2024最新初级会计职称题库来啦!!!

16.根据增值税法律制度的规定&#xff0c;下列各项中&#xff0c;属于"提供加工、修理修配劳务"的是&#xff08;&#xff09;。 A.修理小汽车 B.修缮办公楼 C.爆破 D.矿山穿孔 答案&#xff1a;A 解析&#xff1a;选项AB&#xff1a;修理有形动产&#xff08;…...

Stirling PDF 部署 - 强大的PDF Web在线编辑工具箱

简介 这是一个强大的、可本地托管的、基于 Web 的 PDF 操作工具&#xff0c;可使用 Docker部署。它使您能够对 PDF 文件执行各种操作&#xff0c;包括拆分、合并、转换、重组、添加图像、旋转、压缩等。这个本地托管的 Web 应用程序已经发展到包含一套全面的功能&#xff0c;可…...

大数据面试题之MapReduce(3)

目录 reduce任务什么时候开始? MapReduce的reduce使用的是什么排序? MapReduce怎么确定MapTask的数量? Map数量由什么决定 MapReduce的map进程和reducer进程的ivm垃圾回收器怎么选择可以提高吞吐量? MapReduce的task数目划分 MapReduce作业执行的过程中&#xff0c;中…...

[leetcode]squares-of-a-sorted-array. 有序数组的平方

. - 力扣&#xff08;LeetCode&#xff09; class Solution { public:vector<int> sortedSquares(vector<int>& nums) {int n nums.size();vector<int> ans(n);for (int i 0, j n - 1, pos n - 1; i < j;) {if (nums[i] * nums[i] > nums[j] *…...

使用Spring Boot和Spring Data JPA进行数据库操作

使用Spring Boot和Spring Data JPA进行数据库操作 大家好&#xff0c;我是免费搭建查券返利机器人省钱赚佣金就用微赚淘客系统3.0的小编&#xff0c;也是冬天不穿秋裤&#xff0c;天冷也要风度的程序猿&#xff01;在现代的Web应用开发中&#xff0c;数据库操作是不可或缺的一…...

《昇思25天学习打卡营第17天 | 昇思MindSporeCycleGAN图像风格迁移互换》

17天 本节学习了CycleGAN图像风格迁移互换。 CycleGAN即循环对抗生成网络&#xff0c;该模型实现了一种在没有配对示例的情况下学习将图像从源域 X 转换到目标域 Y 的方法。该模型一个重要应用领域是域迁移&#xff0c;可以通俗地理解为图像风格迁移。其实在 CycleGAN 之前&a…...

SecureCRT使用SSH登录服务器报错:Key exchange failed

SecureCRT使用SSH登录Ubuntu服务器报错&#xff1a;Key exchange failed 原因&#xff1a; ssh客户端与服务器的公钥协商失败&#xff0c;SecureCRT客户端所指定的秘钥交换算法&#xff08;KexAlgorithms &#xff09;&#xff0c;不在服务端支持范围内。可能是服务端的sshd版…...

Oracle给用户单个表查询权限

Oracle给用户单个表查询权限 1. 创建用户 --创建用户thfj_test,密码为thfj_test create user thfj_test identified by thfj_test;2. 用户授权 --授权连接数据库权限给thfj_test grant create session to thfj_test; --授权查询表USER_INFO 的权限给thfj_test grant sele…...

[Go 微服务] Kratos 验证码业务

文章目录 1.环境准备2.验证码服务2.1 kratos 初始化验证码服务项目2.2 使用 Protobuf 定义验证码生成接口2.3 业务逻辑代码实现 1.环境准备 protoc和protoc-gen-go插件安装和kratos工具安装 protoc下载 下载二进制文件&#xff1a;https://github.com/protocolbuffers/protobu…...

等保2.0安全计算环境解读

等保2.0&#xff0c;即网络安全等级保护2.0制度&#xff0c;是中国为了适应信息技术的快速发展和安全威胁的新变化而推出的网络安全保护标准。相较于等保1.0&#xff0c;等保2.0更加强调主动防御、动态防御和全面审计&#xff0c;旨在实现对各类信息系统的全面保护。 安全计算环…...

Qt视频播放器(二)

文章目录 1. 安装FFmpeg库2. 创建Qt项目3. 配置项目文件CMakeLists.txt4. 实现核心FFmpeg功能`videoplayer.h``videoplayer.cpp`5. 实现QML界面`main.qml`6. 主函数`main.cpp`运行项目详细说明结合FFmpeg进行视频播放的核心部分,并使用QML进行界面设计,您可以实现一个功能强大…...

普元EOS学习笔记-创建精简应用

前言 本文依旧基于EOS8.3进行描述。 在上一篇文章《EOS8.3精简版安装》中&#xff0c;我们了解到普元预编译好的EOS的精简版压缩包&#xff0c;安装后&#xff0c;只能进行低开&#xff0c;而无法高开。 EOS精简版的高开方式是使用EOS开发工具提供的IDE&#xff0c;创建一个…...

观察者模式在金融业务中的应用及其框架实现

引言 观察者模式&#xff08;Observer Pattern&#xff09;是一种行为设计模式&#xff0c;它定义了一种一对多的依赖关系&#xff0c;使得多个观察者对象同时监听某一个主题对象。当这个主题对象发生变化时&#xff0c;会通知所有观察者对象&#xff0c;使它们能够自动更新。…...

最新docker仓库镜像

目前下面的docker仓库镜像源还能使用。 vi /etc/docker/daemon.json添加如下配置{"registry-mirrors": ["https://hub.uuuadc.top", "https://docker.anyhub.us.kg", "https://dockerhub.jobcher.com", "https://dockerhub.icu&…...

springboot 3.x相比之前版本有什么区别

Spring Boot 3.x相比之前的版本&#xff08;尤其是Spring Boot 2.x&#xff09;&#xff0c;主要存在以下几个显著的区别和新特性&#xff1a; Java版本要求&#xff1a; Spring Boot 3.x要求至少使用Java 17作为最低版本&#xff0c;同时已经通过了Java 19的测试&#xff0c;…...

Python逻辑控制语句 之 判断语句--if语句的基本结构

1.程序执行的三大流程 顺序 分支&#xff08;判断&#xff09; 循环 2.if 语句的介绍 单独的 if 语句,就是 “如果 条件成⽴,做什么事” 3.if 语句的语法 if 判断条件: 判断条件成立&#xff0c;执行的代码…...

LeetCode 算法:翻转二叉树 c++

原题链接&#x1f517;&#xff1a;翻转二叉树 难度&#xff1a;简单⭐️ 题目 给你一棵二叉树的根节点 root &#xff0c;翻转这棵二叉树&#xff0c;并返回其根节点。 示例 1&#xff1a; 输入&#xff1a;root [4,2,7,1,3,6,9] 输出&#xff1a;[4,7,2,9,6,3,1] 示例 …...

七天速通javaSE:第五天 数组进阶

文章目录 前言一、二维数组二、Arrays类1.toString打印数组内各元素1.1 示例1.2 自己实现内部逻辑 2. sort升序排列3. fill数组填充&#xff08;重新赋值&#xff09;4.equals比较数组元素是否相等 三、冒泡排序 前言 本文将学习二维数组、arrays类以及冒泡排序 一、二维数组 …...

游戏心理学Day28

独立游戏团队架构 独立游戏工作室是一个包括编程美术设计院校项目管理和运营等各种职能的团队找到可以共同奋斗。数月甚至数年的合适人选并不是一件容易的事情。游戏开发过程中要涉及多种常规工作。小团队的每个成员通常都要身兼数职&#xff0c;而且有些角色常由多人担任。 …...

鸿蒙开发设备管理:【@ohos.multimodalInput.inputEventClient (注入按键)】

注入按键 InputEventClient模块提供了注入按键能力。 说明&#xff1a; 本模块首批接口从API version 8开始支持。后续版本的新增接口&#xff0c;采用上角标单独标记接口的起始版本。本模块接口均为系统接口&#xff0c;三方应用不支持调用。 导入模块 import inputEventCli…...

C++:std::function的libc++实现

std::function是个有点神奇的模板&#xff0c;无论是普通函数、函数对象、lambda表达式还是std::bind的返回值&#xff08;以上统称为可调用对象&#xff08;Callable&#xff09;&#xff09;&#xff0c;无论可调用对象的实际类型是什么&#xff0c;无论是有状态的还是无状态…...

DM 的断点续传测试

作者&#xff1a; 大鱼海棠 原文来源&#xff1a; https://tidb.net/blog/4540ae34 一、概述 DM有all、full、incremental三种数据迁移同步方式&#xff08;task-mode&#xff09;&#xff0c;在all同步模式下&#xff0c;因一些特殊情况&#xff0c;需要变更上游MySQL的数…...

力扣每日一题 6/30 记忆化搜索/动态规划

博客主页&#xff1a;誓则盟约系列专栏&#xff1a;IT竞赛 专栏关注博主&#xff0c;后期持续更新系列文章如果有错误感谢请大家批评指出&#xff0c;及时修改感谢大家点赞&#x1f44d;收藏⭐评论✍ 494.目标和【中等】 题目&#xff1a; 给你一个非负整数数组 nums 和一个…...

图像基础知识入门【图像概念不同图像格式】

图像基础知识入门【图像概念&不同图像格式】 最近有在处理图像转换&#xff0c;因此稍微补足了一下图像相关知识&#xff0c;特在此记录。下面汇总是我根据自己理解和网上查阅资料而来。如有错误&#xff0c;欢迎大家指正。 1 基础概念 像素/分辨率 像素(Pixel)&#xff…...

HP服务器基于SNMP-ilo4的硬件监控指标解读

监控易是一款功能全面的IT基础设施监控软件&#xff0c;它通过SNMP协议与HP服务器内置的ilo4远程管理卡进行通信&#xff0c;实现对HP服务器硬件状态的实时监控。本文将针对监控易中基于SNMP-ilo4的HP服务器硬件监控指标进行解读&#xff0c;帮助运维团队更好地理解和应用这些监…...

Android13系统导航栏添加音量加减键按钮功能

不知道为什么拿到芯片原厂发布给我们的Android13系统源码编译后&#xff0c;导航栏没有音量加减键&#xff0c;客户有反馈这个问题&#xff0c;所以特意加了一下&#xff0c;修改记录如下&#xff1a;frameworks/base目录下 commit 9cb2244d61a237cab03c540bfcca6e4fac2bea2c …...

普及GIS知识,推动产业发展

915 GIS节&#xff1a;普及GIS知识&#xff0c;推动产业发展 自2008年起&#xff0c;每年的9月15日被定为“GIS节”&#xff0c;这一特殊的节日由超图首次发起倡议&#xff0c;旨在打造一个普及和传播GIS&#xff08;地理信息系统&#xff09;知识的平台&#xff0c;促进大众对…...

第2章-Python编程基础

#本章目标 1&#xff0c;了解什么是计算机程序 2&#xff0c;了解什么是编程语言 3&#xff0c;了解编程语言的分类 4&#xff0c;了解静态语言与脚本语言的区别 5&#xff0c;掌握IPO程序编写方法 6&#xff0c;熟练应用输出函数print与输入函数input 7&#xff0c;掌握Python…...

LDO产品的基础知识解析

低压降稳压器 (LDO)是一种用于调节较高电压输入产生的输出电压的简单方法。在大多数情况下&#xff0c;低压降稳压器都易于设计和使用。然而&#xff0c;如今的现代应用都包括各种各样的模拟和数字系统&#xff0c;而有些系统和工作条件将决定哪种LDO最适合相关电路&#xff0c…...

如何利用python画出AHP-SWOT的战略四边形(四象限图)

在企业或产业发展的相关论文分析中&#xff0c;常用到AHP-SWOT法进行定量分析&#xff0c;形成判断矩阵后&#xff0c;如何构造整洁的战略四边形是分析的最后一个环节&#xff0c;本文现将相关代码发布如下&#xff1a; import mpl_toolkits.axisartist as axisartist import …...

适用于智慧城市、智慧文旅等在线场景的轻量级3D数字人引擎MyAvatar简介

本人研发的国内首个纯面向web应用和小程序的轻量级3D虚拟人引擎MyAvatar。 功能简述 支持3D模型定制&#xff08;写实或卡通风格均可&#xff0c;人物模型需实现绑定和变形&#xff09;动画可以内置于模型中&#xff0c;也可以单独以glb或fbx格式导出并动态加载支持readyplay…...

Excel显示/隐藏批注按钮为什么是灰色?

在excel中&#xff0c;经常使用批注来加强数据信息的提示&#xff0c;有时候会把很多的批注显示出来&#xff0c;但是再想将它们隐藏起来&#xff0c;全选工作表后&#xff0c;“显示/隐藏批注”按钮是灰色的&#xff0c;不可用。 二、可操作方法 批注在excel、WPS表格中都是按…...

ArtTS系统能力-通知的学习(3.1)

上篇回顾&#xff1a; ArtTS语言基础类库-容器类库内容的学习(2.10.2&#xff09; 本篇内容&#xff1a; ArtTS系统能力-通知的学习&#xff08;3.1&#xff09; 一、 知识储备 1. 基础类型通知 按内容分成四类&#xff1a; 类型描述NOTIFICATION_CONTENT_BASIC_TEXT普通文…...

Apollo9.0 PNC源码学习之Planning模块(三)—— public_road_planner

前面文章: (1)Apollo9.0 PNC源码学习之Planning模块(一)—— 规划概览 (2)Apollo9.0 PNC源码学习之Planning模块(二)—— planning_component 1 planning_interface_base 规划接口基类: planning\planning_interface_base\planner_base\planner.h #pragma once#in…...

【Elasticsearch】linux使用supervisor常驻Elasticsearch,centos6.10安装 supervisor

背景&#xff1a; linux服务器&#xff0c;CentOS 6操作系统&#xff0c;默认版本python2.6.6&#xff0c;避免安装过多的依赖不升级python 在网上查的资料python2.6.6兼容supervisor版本 3.1.3 安装supervisor 手动在python官网下载supervisor&#xff0c;并上传到服务器 下…...

推荐系统三十六式学习笔记:原理篇.模型融合14|一网打尽协同过滤、矩阵分解和线性模型

目录 从特征组合说起FM模型1.原理2.模型训练3.预测阶段4.一网打尽其他模型5.FFM 总结 在上一篇文章中&#xff0c;我们讲到了使用逻辑回归和梯度提升决策树组合的模型融合办法&#xff0c;用于CTR预估&#xff0c;给这个组合起了个名字&#xff0c;叫“辑度组合”。这对组合中&…...

如何使用mapXplore将SQLMap数据转储到关系型数据库中

关于mapXplore mapXplore是一款功能强大的SQLMap数据转储与管理工具&#xff0c;该工具基于模块化的理念开发&#xff0c;可以帮助广大研究人员将SQLMap数据提取出来&#xff0c;并转储到类似PostgreSQL或SQLite等关系型数据库中。 功能介绍 当前版本的mapXplore支持下列功能…...

JAVA设计模式-大集合数据拆分

背景 我们在做软件开发时&#xff0c;经常会遇到把大集合的数据&#xff0c;拆分成子集合处理。例如批量数据插入数据库时&#xff0c;一次大约插入5000条数据比较合理&#xff0c;但是有时候待插入的数据远远大于5000条。这时候就需要进行数据拆分。数据拆分基本逻辑并不复杂&…...

如何使用sr2t将你的安全扫描报告转换为表格格式

关于sr2t sr2t是一款针对安全扫描报告的格式转换工具&#xff0c;全称为“Scanning reports to tabular”&#xff0c;该工具可以获取扫描工具的输出文件&#xff0c;并将文件数据转换为表格格式&#xff0c;例如CSV、XLSX或文本表格等&#xff0c;能够为广大研究人员提供一个…...

ansible自动化运维,(2)ansible-playbook

三种常见的数据格式&#xff1a; XML&#xff1a;可扩展标记语言&#xff0c;用于数据交换和配置 JSON&#xff1a;对象标记法&#xff0c;主要用来数据交换或配置&#xff0c;不支持注释 YAML&#xff1a;不是一种标记语言&#xff0c;主要用来配置&#xff0c;大小写敏感&…...

一分钟学习数据安全—自主管理身份SSI分布式标识DID介绍

SSI标准化的两大支柱&#xff0c;一个是VC&#xff0c;之前简单介绍过&#xff0c;另一个就是DID。基本层次上&#xff0c;DID就是一种新型的全局唯一标识符&#xff0c;跟浏览器的URL没有什么不同。深层次上&#xff0c;DID是互联网分布式数字身份和PKI新层级的原子构件。 一…...

[单master节点k8s部署]11.服务service

service service是一个固定接入层&#xff0c;客户端 可以访问service的ip和端口&#xff0c;访问到service关联的后端pod&#xff0c;这个service工作依赖于dns服务&#xff08;coredns&#xff09; 每一个k8s节点上都有一个组件叫做kube-proxy&#xff0c;始终监视着apiser…...

ES6面试题——箭头函数和普通函数有什么区别

1. this指向问题 <script> let obj {a: function () {console.log(this); // 打印出&#xff1a;{a: ƒ, b: ƒ}},b: () > {console.log(this); // 打印出Window {window: Window, self: Window,...}}, }; obj.a(); obj.b(); </script> 箭头函数中的this是在箭…...

Three.js机器人与星系动态场景:实现3D渲染与交互式控制

内容摘要&#xff1a;使用Three.js库构建了一个交互式的3D场景。组件中创建了一个机器人模型&#xff0c;包括头部、眼睛、触角、身体和四肢&#xff0c;以及两个相同的机器人实例以实现动态效果。场景中还加入了粒子效果&#xff0c;模拟星系环境&#xff0c;增强了视觉效果。…...

hmmer数据库合并

下载的数据库&#xff0c;解压之后是一个很多hmm文件的文件夹&#xff0c;不便于注释 https://fileshare.csb.univie.ac.at/vog/vog224/vfam.hmm.tar.gz cat *.hmm > vog224.hmm hmmpress vog224.hmm比对 hmmscan --tblout test_VOG.tbl --domtblout test_VOG.dom --noal…...

深度学习之半监督学习:一文梳理目标检测中的半监督学习策略

什么是半监督目标检测&#xff1f; 传统机器学习根据训练数据集中的标注情况&#xff0c;有着不同的场景&#xff0c;主要包括&#xff1a;监督学习、弱监督学习、弱半监督学习、半监督学习。由于目标检测任务的特殊性&#xff0c;在介绍半监督目标检测方法之前&#xff0c;我…...

MacOS miniconda安装方法

打开macos “终端” 应用 执行命令 mkdir -p ~/miniconda3curl https://mirrors.tuna.tsinghua.edu.cn/anaconda/miniconda/Miniconda3-latest-MacOSX-arm64.sh -o ~/miniconda3/miniconda.shbash ~/miniconda3/miniconda.sh -b -u -p ~/miniconda3rm -rf ~/miniconda3/mini…...

快递物流运输中的锁控系统优缺点探讨

一、物流运输中锁控系统的重要性 1.1 保障货物安全 在物流运输过程中&#xff0c;货物安全是物流公司最为关注的问题之一。传统机械锁虽然在一定程度上提供了安全保障&#xff0c;但其缺点逐渐暴露&#xff0c;成为物流运输中的一个痛点。 易被破解&#xff1a;传统机械锁通…...

基于jeecgboot-vue3的Flowable流程-集成仿钉钉流程(一)图标svgicon的使用

因为这个项目license问题无法开源&#xff0c;更多技术支持与服务请加入我的知识星球。 1、lowflow这里使用了tsx的动态图标&#xff0c;如下&#xff1a; import ./index.scss import type { CSSProperties, PropType } from vue import { computed, defineComponent, resolv…...

20.98万元起!长安福特蒙迪欧运动版上市

2024年6月7日长安长安福特蒙迪欧运动版上市,新车共推出2款车型,厂商指导价20.98万元、22.98万元。动力上,搭载2.0T大马力E混动系统。外观方面,新车整体采用福特全新设计语言,看上去更加的运动。前脸8边形黑化蜂眼式前格栅,显得十分的运动。两侧采用分体式大灯组,上部细长…...

JeepAvenger4xe,1.2T+双电机

近日,懂车之道获悉,Jeep品牌发布Avenger 4xe车型官图,据悉,新车预计今年晚些时候在欧洲上市。下面,和大家一起来看看新车的产品力如何?外观上,Avenger 4xe新车造型更为精致,封闭式七孔格栅装饰,前大灯组合,引擎上更是有多条筋线,下格栅造型硬朗,下包围采用大量黑色…...

豪华中大型SUV,全系2.0T+8AT,25.58万起

作为豪华中大型SUV,红旗HS7从上市以来始终没有一个太好的市场表现,相对市场表现比较低迷,不过这并不意味着红旗HS7不值得买,尤其是近期红旗HS7的优惠力度也比较大。根据我们了解,目前在售的红旗HS7指导售价区间为25.58-33.58万元,现金优惠2万元后的售价为23.58-31.58万元…...

new CCDIKSolver( OOI.kira, iks ); // 创建逆运动学求解器

demo案例 new CCDIKSolver(OOI.kira, iks); 在使用某个特定的库或框架来创建一个逆运动学&#xff08;Inverse Kinematics, IK&#xff09;求解器实例。逆运动学在机器人学、动画和计算机图形学等领域中非常重要&#xff0c;它用于根据期望的末端执行器&#xff08;如机器人的…...

OpenMV的VisionBoard视觉识别开发板学习记录

此篇博客仅用于对VisionBoard的开发板的学习研究记录&#xff0c;没有教学内容。 一、资料来源 开发板资料链接 开发板环境搭建手册 开发板视频教程 板子的资料网站 openmv官方的网站 目录 一、资料来源二、针对 VisionBoard的目标识别和定位总结1. 目标识别功能1.1 物体检测…...

后端企业级开发之yaml数据序列化格式文件详解2024

yaml格式 数据格式 yaml 是一种数据序列化的格式 容易阅读 容易与脚本语言交互 以数据为核心 重数据轻格式 我们要知道他怎么书写 大小写敏感 属性层级关系使用多行描述 每行结尾使用冒号结束 使用缩进表示层级关系 同层级左侧对其 只运行使用空格 属性前面添加空格 #表…...