shell基础使用及vim的常用快捷键
一、shell简介
参考博文1
参考博文2——shell语法及应用
参考博文3——vi的使用
在linux中有很多类型的shell,不同的shell具备不同的功能,shell还决定了脚本中函数的语法,Linux中默认的shell是 / b in/ b a s h ,流行的shell有ash、bash、ksh、csh、zsh等
#!/bin/bash #这一行被称为shebang 行 [指定告知系统当前这个脚本要使用的shell解释器]
1.1 shell常用的命令和概念
(1)echo:用于在屏幕上显示文本或变量的值
echo "Hello, World!"
(2)read:用于从用户那里读取输入并将其赋值给变量
read -p "Enter your name: " name
echo "Hello, $name"
(3)if:条件判断语句,用于根据条件执行不同的命令
if [ $num -gt 10 ]; thenecho "Number is greater than 10"
elseecho "Number is less than or equal to 10"
fi
(4)for:循环语句,用于重复执行一系列命令。
for i in 1 2 3 4 5; doecho "Welcome $i times"
donefor i in {1..10};do #遍历1-10,并输出echo $i
done
(5)while:循环语句,只要条件为真就继续执行
while [ $num -lt 10 ]; doecho $numnum=$((num+1))
done
(6)case:多条件判断语句,用于根据不同的条件执行不同的命令。
case $choice in1) echo "Option 1 selected";;2) echo "Option 2 selected";;*) echo "Invalid option";;
esac
1.2shell脚本的写入和运行
1.写入的4种方式
shell脚本的写入方式
1.cat > test.sh
"hello world"
"hello boys" #键入写入test.sh的内容,写完后按CTRL+D退出2.echo "hello world" > test.sh #写入test.sh并覆盖原有内容
3.echo "hello world" >> test.sh #写入test.sh的末尾,不覆盖原有内容
4.vi test.sh #使用vi编辑#在文件指定行写入内容sed -i "5i 写入内容" test.sh #在第5行写入内容
注意执行前先给shell脚本可执行的权限:chmod +x test.sh(最开始创建的test.sh只是一个文本文件,必须给权限后才可运行)
#3种方式均可运行sh脚本
bash test.sh
sh test.sh
./test.sh #注意!!! 不可忽略./
2.输入/输出重定向
linux标准输入输出:
- 0:键盘(/dev/stdin)——标准输入
- 1:显示器(/dev/stdout)——标准输出
- 2:显示器(/dev/stderr)——标准错误输出
输入重定向:不使用标准输入端口输入文件,而是使用指定的文件作为标准输入设备。(使用 “<”符来修改标准输入设备)
echo "today is $(date)" #输出Today id 2024年 05月 20日 星期一 14:26:59 CST
echo " today is $(date)" >> test.sh #将输出内容写到test.sh文件的末尾
常用的转义字符:\n:换行 \t:制表符 \\反斜杠 \" 双引号 \'单引号
3.shell变量
注意事项!!!
1.等号两侧不能有空格,如:name="john"
2.环境变量建议大写
3.单引号(全引用):单引号括起的内容不管是常量还是变量都不会发生替换(引用的即输出的)
4.双引号(部分引用):变量发生替换,常量保持不变
5.无引号:字符串不能包含空白字符(space/tab),一般连续的字符串、数字、路径等可以不加引号
字符串常量使用单引号括起来,如果字符串含有变量、命令等使用双引号括起来,不建议不加引号
命令执行:必须用反引号(`命令`)或$(命令):如:echo `ls` 或者echo $(ls) ,才会输出ls命令执行结果(也即显示当前目录下的文件)
#单引号使用
var=double
echo '$var' #输出:$var#双引号使用
var=double
echo "$var" #输出:double#无引号使用
str1="test1",str2='test2',str3=teststring
echo $str1,$str2,$str3 #输出test1,str2=test2,str3=teststring
3.1变量分类
- 自定义变量:户自由定义变量名和变量的值
- 环境变量:保存和系统操作环境相关的数据
- .位置参数变量:向脚本当中传递参数或数据的,变量名不能自定义,变量作用是固定的。
- 预定义变量:Bash中已经定义好的变量,变量名不能自定义,变量作用也是固定的
#变量的调用
[root@root scripts]# name="shen zhen"
[root@root scripts]# echo $name
shen zhen
3.2变量查看
set指令能设置所使用shell的执行方式,可依照不同的需求来做设置。
set [+-abCdefhHklmnpPtuvx]unset name #删除变量
env #查看系统默认环境变量
3.2.1位置参数变量
$n: n为数字,$0表示当前 Shell 脚本程序的名称,$1-9 代 表 第 一 到 第 九 个 参 数 , 十 以 上 的 参 数 需 要 用 大 括 号 包 含 ,如{10}
$*:代表命令行中所有的参数,$把所有的参数看成一个整体
$@:代表命令行中所有的参数,不过$@把每个参数区分对待
$#:代表命令行中所有参数的个数
#! /bin/bashecho "shell脚本本身的名字:$0" #输出:shell脚本本身的名字:test.sh
echo "传给shell的第一个参数:$1" #输出:传给shell的第一个参数:1
echo "传给shell的第二个参数:$2" #输出:传给shell的第二个参数:2
3.2.2预定义变量
$?: 最后一次执行命令的返回状态。为0则命令执行成功,反之,不成功
$$: 当前进程的进程号PID
$!: 后台运行的最后一个进程的进程号
1.cat:用于查看和连接文件
'>'用于创建文件, '>>'用于追加内容(不覆盖原内容)
cat file #查看文件
cat > test.py # 将标准输入到重定向文件,覆盖该文件内容
cat >> test.py #将标准输入写到文件末尾cat file1 file2 > file3 #将file1和file2的内容合并写到file3(若file3有内容,则会被覆盖)
cat file1 file2 > file3 #将file1和file2的内容合并写到file3(若file3有内容,则会写到文件后)cat file1 file2 #显示多个文件内容
cat filename | command #将cat命令的输出作为另一个命令的输入
cat -n textfile1 > textfile2 # textfile1 的文档内容加上行号后输入 textfile2
cat filename | tail -n 10 #显示file的最后10行nl filename #显示行号(包括空白行)
cat -n filename #显示行号(包括空白行)
cat -b filename #显示行号(不包括空白行)
cat -e filename #在每行结尾处添加符号"$"cat /dev/null > /etc/tsst.txt #清空 /etc/test.txt 文档内容
cat /dev/fd0 > OUTFILE #制作镜像文件,如要制作 软盘的镜像文件OUTFILE,将软盘放好后,使用此命令
cat /IMG_FILE > /dev/fd0 #相反的,如果想把 image file镜像文件 写到软盘,使用此命令
2.more 文件内容或输出查看工具
more /root/test.py #查看文件内容,同cat,并可分页显示文件内容参数如下:+num 从第num行开始显示;-num 只显示前num行;+/pattern 从pattern 前两行开始显示;-c 从顶部清屏然后显示;-d 提示Press space to continue, 'q' to quit.(按空格键继续,按q键退出),禁用响铃功能;-l 忽略Ctrl+l (换页)字符;-p 通过清除窗口而不是滚屏来对文件进行换页。和-c参数有点相似;-s 把连续的多个空行显示为一行;-u 把文件内容中的下划线去掉退出more的动作指令是qmore -dc test.sh #清屏查看当前文件
ls -l /etc |more #通过管道与more结合(当要显示的内容很多时,cat直接打印了所有内容,可能会看不到前面部分的内容,就可利用more分屏显示)#查看大文件时,有以下常用快捷键:Enter: 向下1行(默认,可修改多行)Ctrl+f: 向下滚动1屏;空格键: 向下滚动1屏;Ctrl+b: 返回上一屏;= : 输出当前行的行号;:f: 输出文件名和当前行的行号;v: 调用vi编辑器;! : 调用Shell,并执行命令;q : 退出more当我们查看某一文件时,想调用vi来编辑它,不要忘记了v动作指令,这是比较方便的;
3.less查看文件
less test.sh
常用参数-c 从顶部(从上到下)刷新屏幕,并显示文件内容。而不是通过底部滚动完成刷新;
-f 强制打开文件,二进制文件显示时,不提示警告;
-i 搜索时忽略大小写;除非搜索串中包含大写字母;
-I 搜索时忽略大小写,除非搜索串中包含小写字母;
-m 显示读取文件的百分比;
-M 显法读取文件的百分比、行号及总行数;
-N 在每行前输出行号;
-p pattern 搜索pattern;比如在/etc/profile搜索单词MAIL,就用 less -p MAIL /etc/profile
-s 把连续多个空白行作为一个空白行显示;
-Q 在终端下不响铃;man less #查看less 使用head -n 5 /var/log/msg #显示msg文件的前5行tail -n 5 /var/log/msg #显示msg文件的最后5行
tail -f /var/log/msg #实时显示msg文件
二、shell运算符
在shell中,常见的有算数运算符、关系运算符、逻辑运算符、字符串运算符、文件测试运算符等
2.1算术运算符
# bash不支持简单的数学运算,但是可以通过其他命令来实现,利用awk 、expr(常用)完成表达式的计算
条件表达式:
= |赋值| a=$b 将把变量 b 的值赋给 a。
==| 相等。用于比较两个数字,相同则返回 true(真)。| [ $a == $b ] 返回 false(假)。
!= |不相等。用于比较两个数字,不相同则返回 true。 |[ $a != $b ] 返回 true。注意:条件表达式要放在方括号之间,并且要有空格,如: [ $a == $b ]、[ $a != $b ]
a=30
b=10
echo "$a"
echo "$b"
echo "a + b = " `expr $a + $b` #输出40
echo "a - b = " `expr $a - $b` #输出20
echo "a * b = " `expr $a \* $b` #输出300
echo "a / b = " `expr $a / $b` #输出3
echo "a % b = " `expr $a % b` #输出
--------------------------------------------
if [$a == $b]
thenech和b相等"
elseecho "a和b不等" #输出a和b不等
fi
2.2关系运算符
关系运算符只支持数字,不支持字符串,除非字符串的值是数字。
下表列出了常用的关系运算符,假定变量 a 为 10,变量 b 为 20:
四、vim的使用
Vim是vi的增强版,继承了vi的基本使用,新增了语法高亮、多窗口编辑、撤销与重做 。
目前大部分版本都以 vim 取代 vi 的功能了,如果你使用 vi 后,却看到画面的右下角有显示目前光标所在的行列号码,表明 vi 已经被 vim 所取代
- 进入编辑模式:键入按键aori(AORI),进入insert模式,即可编辑文档
- 命令行模式: 键入按键:/?(任意一个)即可移动光标到文档最下方
- 常用指令:’:wq’(保存并退出)、’:q’(不保存退出)、’:q!’(不保存强制退出)
- 移动光标到文件顶部:gg
- 移动光标到文件底部:G
- 移动光标到指定行数:ngg(如:移动到第5行:5gg)
- 撤销上一步操作:进入命令行模式(esc+ u)u 或 :undo
- 恢复撤销的操作:Ctrl + r 或 :redo
- 选择文本:Ctrl+v(进入可视块模式,移动光标选择文本)
- 选择文本进行复制:Ctrl+v +y +p(选择+复制+粘贴)
- 复制整行:进入命令行模式(esc+ yy) -----(复制5行:5yy)
- 粘贴:进入命令行模式(esc)+ p
- 删除:进入命令行模式(esc)+ dd/D
- 指定行编辑:vim filename +n
- 控制光标移动方向:hjkl分别对应:左下上右
光标每次移动一个单词:w(word):向后移动一个单词;b(back):向前移动一个单词
屏幕移动:Ctrl+b:向上翻页 ; Ctrl+f:向下翻页; H / M / L:屏幕顶部/中间底部
相关文章:
shell基础使用及vim的常用快捷键
一、shell简介 参考博文1 参考博文2——shell语法及应用 参考博文3——vi的使用 在linux中有很多类型的shell,不同的shell具备不同的功能,shell还决定了脚本中函数的语法,Linux中默认的shell是 / b in/ b a s h ,流行的shell…...
Mac 安装psycopg2出错:Error:pg_config executable not found的解决
在mac 上执行pip3 install psycopg2-binary出现如下错误: Error:pg_config executable not found然后我又到终端里执行 brew install postgresql16 显示 Warning: You are using macOS 15. We do not provide support for this pre-release version. It is expe…...
UniApp | 从入门到精通:开启全平台开发的大门
UniApp | 从入门到精通:开启全平台开发的大门 一、前言二、Uniapp 基础入门2.1 什么是 Uniapp2.2 开发环境搭建三、Uniapp 核心语法与组件3.1 模板语法3.2 组件使用四、页面路由与导航4.1 路由配置4.2 导航方法五、数据请求与处理5.1 发起请求5.2 数据缓存六、样式与布局6.1 样…...
Kafka3.x KRaft 模式 (没有zookeeper) 常用命令
版本号:kafka_2.12-3.7.0 说明:如有多个地址,用逗号分隔 创建主题 bin/kafka-topics.sh --bootstrap-server localhost:9092 --create --topic demo --partitions 1 --replication-factor 1删除主题 bin/kafka-topics.sh --delete --boots…...
【竞技宝】CS2:NertZ离队Liquid光速加盟!
2025年1月7日,目前CS2的赛事正处于空窗期中,很多队伍在近期都在进行阵容上的调整,其中出现了很多震惊观众的转会消息。今日凌晨,HEROIC官宣队内的NertZ选手正式离队,此后Liquid很快发布消息宣布了NertZ的加盟。 今日凌…...
PDFMathTranslate: Star13.8k,一款基于AI的PDF文档全文双语翻译PDF文档全文双语翻译,保留格式神器,你应该需要它
嗨,大家好,我是小华同学,关注我们获得“最新、最全、最优质”开源项目和高效工作学习方法 PDFMathTranslate是一个开源项目,旨在为用户提供便捷的PDF科学论文翻译解决方案。它不仅能够翻译文本,还能保留公式、图表、目…...
滑动窗口——最小覆盖子串
一.题目描述 76. 最小覆盖子串 - 力扣(LeetCode) 二.题目解析 题目还是很好理解的,就是在字符串s中找到一个子串,该子串包含字符串t的所有字符。返回最短的子串。如果s中不包含这样的子串就返回一个空串。 需要注意的是&#…...
2012mfc,几种串
串,即是由符组成的串,在标准C,标准C,MFC中串这一功能的实现是不相同的,C完全兼容了C. 1.标准C中的串 在标准C中没有串数据类型,C中的串是有符类型的符数组或符类型的符指针来实现的.如: char name[26]"This is a Cstyle string"; //或char *name"This is a…...
基于SpringBoot的乐器商城购物推荐系统
作者:计算机学姐 开发技术:SpringBoot、SSM、Vue、MySQL、JSP、ElementUI、Python、小程序等,“文末源码”。 专栏推荐:前后端分离项目源码、SpringBoot项目源码、Vue项目源码、SSM项目源码、微信小程序源码 精品专栏:…...
Jurgen提出的Highway Networks:LSTM时间维方法应用到深度维
Jurgen提出的Highway Networks:LSTM时间维方法应用到深度维 具体实例与推演 假设我们有一个离散型随机变量 X X X,它表示掷一枚骰子得到的点数,求 X X X 的期望。 步骤: 列出 X X X 的所有可能取值 x i x_i xi(…...
asp.net core中的 Cookie 和 Session
在 Web 开发中,用户会话管理是非常重要的,尤其是在需要保持用户状态和身份验证的应用中。ASP.NET Core 提供了多种状态管理技术,如 Cookie 和 Session,它们可以帮助你管理用户会话、存储数据并实现用户身份验证等功能。下面将详细…...
【STM32+CubeMX】 新建一个工程(STM32F407)
相关文章: 【HAL库】 STM32CubeMX 教程 1 --- 下载、安装 目录 第一部分、新建工程 第二部分、工程文件解释 第三部分、编译验证工程 友情约定:本系列的前五篇,为了方便新手玩家熟悉CubeMX、Keil的使用,会详细地截图每一步Cu…...
IO进程day1
一、思维导图...
剧本字幕自己看
Hello English learners! Welcome back to my channel! My name is Ethan, and today we’re diving into a topic we deal with every day—traffic. 大家好,英语学习者们!欢迎回到我的频道!我是Ethan,今天我们要聊一个每天都会遇到的话题——交通。 When I drive somewh…...
Java排序
Map Stream 排序 最簡單的排序方式 Map<String,String> _lineMap = _itRow.next();_lineMap = _lineMap.entrySet().stream().sorted((i1,i2)>i1.getKey().compareTo(i2.getKey())).collect(Collectors.toMap(Map.Entry::getKey, Map.Entry::getValue,(e1,e2)->e…...
Geoserver修行记-后端调用WMS/WMTS服务无找不到图层Could not find layer
项目场景 调用geoserver地图服务WMS,找不到图层 我在进行地图服务调用的时候,总是提示我找不多图层 Could not find layer,重点是这个图层我明明是定义了,发布了,且还能够正常查看图层的wms的样式,但是在调用后端调用…...
JavaScript代码片段二
见过不少人、经过不少事、也吃过不少苦,感悟世事无常、人心多变,靠着回忆将往事串珠成链,聊聊感情、谈谈发展,我慢慢写、你一点一点看...... JavaScript统计文字个数、特殊字符转义、动态插入js代码、身份证验证 统计文字个数 f…...
Opencv图片的旋转和图片的模板匹配
图片的旋转和图片的模板匹配 目录 图片的旋转和图片的模板匹配1 图片的旋转1.1 numpy旋转1.1.1 函数1.1.2 测试 1.2 opencv旋转1.2.1 函数1.2.2 测试 2 图片的模板匹配2.1 函数2.2 实际测试 1 图片的旋转 1.1 numpy旋转 1.1.1 函数 np.rot90(kl,k1),k1逆时针旋转9…...
ebpf 笔记
eBPF(extened Berkeley Packet Filter)是一种内核技术,它允许开发人员在不修改内核代码的情况下运行特定的功能 https://zhuanlan.zhihu.com/p/712220029 eBPF技术简介 - 阅读清单 - 腾讯云开发者社区-腾讯云 从石器时代到成为“神”,一文讲透eBPF技术发展演进史 …...
C++编程基础之override关键字
在C中,override关键字用于显式地标识派生类中的成员函数是对基类中虚函数的重写,具有以下重要作用和使用说明: 作用 增强代码可读性:通过使用override关键字,能够清晰地向阅读代码的人表明该函数是有意重写基类中的虚…...
自动化之数据库:docker部署mongo,为下一步的使用打下基础
以下是一个详细的Docker Compose配置示例,用于设置一个包含三个节点的MongoDB副本集,并确保安全性(使用账号密码进行认证)。所有节点都将设置在同一个Docker网络( py-mongo )下,以便于未来的扩…...
VR+智慧消防一体化决策平台
随着科技的飞速发展,虚拟现实(VR)技术与智慧城市建设的结合越来越紧密。在消防安全领域,VR技术的应用不仅能够提升消防训练的效率和安全性,还能在智慧消防一体化决策平台中发挥重要作用。本文将探讨“VR智慧消防一体化…...
新能源网站提升用户体验的关键
新能源网站的用户体验对于吸引和留住访问者至关重要。一个优秀的用户体验可以增加用户的满意度,提高他们对网站的忠诚度。在设计新能源网站时,关键在于简洁明了的界面和易于导航的布局。用户应该能够轻松找到他们需要的信息,而不会感到困惑或…...
【12_多数元素】
问题 给定一个大小为 n 的数组 nums ,返回其中的多数元素。 多数元素是指在数组中出现次数 大于 ⌊ n/2 ⌋ 的元素。你可以假设数组是非空的,并且给定的数组总是存在多数元素。 思路 使用摩尔投票算法来解决。该算法的基本思想是维护一个候选人和一个…...
深入理解 Android 中的 ActivityInfo
深入理解 Android 中的 ActivityInfo 在 Android 开发中,ActivityInfo 是一个非常重要的类,它包含了关于 Activity 的元信息。这些信息通常是从 AndroidManifest.xml 文件中提取的,开发者可以通过 ActivityInfo 类来获取和操作这些信息。本文…...
【通识安全】煤气中毒急救的处置
1.煤气中毒的主要症状与体征一氧化碳中毒,其中毒症状一般分为轻、中、重三种。 (1)轻度:仅有头晕、头痛、眼花、心慌、胸闷、恶心等症状。如迅速打开门窗,或将病人移出中毒环境,使之吸入新鲜空气和休息,给些热饮料&am…...
windows从0开始配置llamafactory微调chatglm3-6b
提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 文章目录 一、准备工作1、创建python虚拟环境(annoconda)2、配置pytorch傻瓜版3、llamafactory配置4、微调数据准备 一、准备工作 1、创建python虚拟环境(annoconda) 本篇文…...
IM-Magic Partition Resizer(分区调整软件) v7.5.0 多语便携版
IM-Magic Partition Resizer是一款功能强大的分区调整软件,允许用户调整并重新分配硬盘分区空间,从而在不丢失数据的情况下改变分区的大小和位置。 软件功能 支持调整和重新分配硬盘分区的空间大小。能够将分区扩大或缩小而不会导致数据丢失。可以改变分…...
matlab中高精度计算函数vpa与非厄米矩阵本征值的求解
clear;clc;close all tic %并行设置% delete(gcp(nocreate));%关闭之前的并行 cparcluster(local); c.NumWorkers50;%手动设置线程数(否则默认最大线程为12) parpool(c, c.NumWorkers); %并行设置%w1; u2.5;N30;valstozeros(2*N2,100); v10linspace(-3,3,100).;parfor jj1:leng…...
流程图(四)利用python绘制漏斗图
流程图(四)利用python绘制漏斗图 漏斗图(Funnel Chart)简介 漏斗图经常用于展示生产经营各环节的关键数值变化,以较高的头部开始,较低的底部结束,可视化呈现各环节的转化效率与变动大小。一般重…...
Elasticsearch:索引mapping
这里写目录标题 一、介绍二、动态mapping三、mapping属性(1)analyzer(分析器)(2) coerce(强制类型转换)(3)copy_to(合并参数) 一、介绍 二、动态mapping 三…...
AI赋能跨境电商:魔珐科技3D数字人破解出海痛点
跨境出海进入狂飙时代,AI应用正在深度渗透并重塑着跨境电商产业链的每一个环节,迎来了发展的高光时刻。生成式AI时代的大幕拉开,AI工具快速迭代,为跨境电商行业的突破与飞跃带来了无限可能性。 由于跨境电商业务自身特性鲜明&…...
计算机网络之---信号与编码
信号 在物理层,信号是用来传输比特流的物理量,它可以是电压、电流、光强度等形式,通常通过电缆、光纤或者无线信道等媒介传播。 信号主要分为以下两种类型: 模拟信号(Analog Signal):信号在时间…...
腾讯云AI代码助手编程挑战赛-FinChat
作品简介 FinChat 是一款极具创新性的智能股票分析工具,依托国内顶尖大语言模型打造而成。它专为日常忙碌、无暇顾及金融市场,却又手握闲钱渴望投资的人群量身定制。核心功能包括: 自动剖析股票数据:迅速生成深度专业研报。实时…...
2025年PMP考试最新报名通知
经PMI和中国国际人才交流基金会研究决定,中国大陆地区2025年第一期PMI认证考试定于3月15日举办。在基金会网站报名参加本次PMI认证考试的考生须认真阅读下文,知悉考试安排及注意事项,并遵守考试有关规定。 一、时间安排 (一&#…...
蓝凌EIS智慧协同平台 fi_message_receiver.aspx SQL注入漏洞复现(CVE-2025-22214)
0x01 产品简介 蓝凌EIS智慧协同平台是一款专为成长型企业打造的沟通、协同、社交的移动办公平台,旨在提升企业内部沟通、协作和信息共享的效率。该平台集成了各种协同工具和功能,全面满足企业的办公需求。具体来说,它覆盖了审批、流程、财务、行政、人事、客户等全在线业务…...
我用AI学Android Jetpack Compose之入门篇(2)
我跑成功了第一个Compose应用,但我还是有很多疑问,请人工智能来解释一下吧。答案来自 通义千问 文章目录 1.请解释一下Compose项目的目录结构。根目录模块目录(通常是app)app/build.gradleapp/src/mainapp/src/main/uiapp/src/ma…...
确认2D Tilemap Editor安装后仍然没有基础的Tile
Create > 2D 新建里面什么Tile类型都有,就是没有最基础的Tile。 在Assets文件夹中,点击右键 > Create > C# Script,新建一个脚本,代码内容复制粘贴进去 using UnityEngine; using UnityEngine.Tilemaps;[CreateAssetMe…...
flutter 独立开发之笔记
1、# use: - [flutter_launcher_icons:] 每次修改完icon后,都需要执行一遍 dart run flutter_launcher_icons 2、开启混淆并打包apk flutter build apk --obfuscate --split-debug-info./out/android/app.android-arm64.symbols 3、开启windows支持 flutter con…...
234.回文链表
234.回文链表 思路1:双指针 1.一次遍历记录链表的值到数组中 2.数组头尾双指针开始判断 复杂度: 时间O(n),空间O(n) 代码: class Solution { public:bool isPalindrome(ListNode* head) {vector<int>nums;while(head){nums.push…...
02、Redis的安装与配置
一、安装配置CentOS7 第一步:安装虚拟机 这个步比较简单,直接安装好VMware和使用CentOS7的镜像安装操作系统 相关资源如果有需要可以在如下位置下载: VMare虚拟机:VMare工具 CentOS7镜像:CentOS7镜像 JDK17_linux-x64:JDK17_linux-x64 linux服务器连接工具:MobaX…...
自动驾驶相关知识学习笔记
一、概要 因为想知道SIL、HIL是什么仿真工具,故而浏览了自动驾驶相关的知识。 资料来源《自动驾驶——人工智能理论与实践》胡波 林青 陈强 著;出版时间:2023年3月 二、图像的分类、分割与检测任务区别 如图所示,这些更高阶的…...
虹软人脸识别
虹软人脸识别 一.虹软人脸识别1. 获取APP_ID与SDK_KEY2. 获取SDK二.Spring整合1. jar包引入2. yaml配置3. 配置类4. 工具类5. api接口6. 启动加载三.前端四.相关文献一.虹软人脸识别 开发者平台 1. 获取APP_ID与SDK_KEY 2. 获取SDK 开发文档 jar包与dll文件...
【Unity笔记】如何把语言修改为简体中文?
方法1: 打开unity hub--------->点击安装--------------->点击你正在使用引擎的设置按钮(右面)------------>点击添加模块------------>最下面语言包,下载简体中文。 方法2: https://new-translate.unit…...
在Nvidia Jetson ADX Orin中使用TensorRT-LLM运行llama3-8b
目录 背景:步骤 1.获取模型权重第 2 步:准备第 3 步:构建 TensorRT-LLM 引擎 背景: 大型语言模型 (LLM) 推理的关键瓶颈在于 GPU 内存资源短缺。因此,各种加速框架主要强调减少峰值 GPU 内存使…...
图数据库管理系统(Graph DBMS)全面解析
目录 前言1. 图数据库管理系统概述1.1 图数据库的基本组成1.2 图数据库的工作原理 2. 图数据库的特点与优势2.1 高效处理复杂关系数据2.2 灵活的数据建模2.3 优越的查询性能2.4 支持大规模分布式存储 3. 图数据库的应用场景3.1 社交网络3.2 推荐系统3.3 金融风控3.4 网络与IT运…...
中华人民共和国预算法实施条例
(1995年11月2日国务院第37次常务会议通过 1995年11月22日中华人民共和国国务院令第186号发布 自发布之日起施行) 第一章 总则 第一条 根据《中华人民共和国预算法》(以下简称预算法),制定本条例。 第二条 县级以上地方政府的派出机关,根据本级政…...
LabVIEW专栏十、工厂模式
目录 一、工厂模式1.1、创建仪器管理类1.2、初始化1.3、方法1.3.1、set devices1.3.2、index to device 1.4、释放资源 二、测试管理类2.1、界面2.2、程序框图2.2.1、初始化2.2.2、索引仪器 该章介绍一种设计模式"工厂模式",新建一个仪器管理类࿰…...
基于SpringBoot的斯诺克球馆预约购票管理系统
作者:计算机学姐 开发技术:SpringBoot、SSM、Vue、MySQL、JSP、ElementUI、Python、小程序等,“文末源码”。 专栏推荐:前后端分离项目源码、SpringBoot项目源码、Vue项目源码、SSM项目源码、微信小程序源码 精品专栏:…...
C# 设计模式(行为型模式):命令模式(专注于撤销重做)
C# 设计模式(行为型模式):命令模式 (Command Pattern) 一、什么是命令模式? 命令模式(Command Pattern)是一种行为型设计模式,它将请求封装成一个对象,从而使你可以用不同的请求、队…...