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

合肥网站建设公司还有不/余姚seo智能优化

合肥网站建设公司还有不,余姚seo智能优化,广告设计这个行业怎么样,为企业为什么做网站文章目录 一.awk概述1.概述2.作用3.awk的工作过程4.awk 工作原理及命令格式5.awk的基本操作及其内置变量5.1 awk的-F操作5.2 awk的-v操作5.3 内置变量 二.awk 打印1.基本打印用法1.1 默认打印1.2打印文件内容 2.对行进行操作2.1 只打印行号(有多少行)2.2…

文章目录

  • 一.awk概述
    • 1.概述
    • 2.作用
    • 3.awk的工作过程
    • 4.awk 工作原理及命令格式
    • 5.awk的基本操作及其内置变量
      • 5.1 awk的-F操作
      • 5.2 awk的-v操作
      • 5.3 内置变量
  • 二.awk 打印
    • 1.基本打印用法
      • 1.1 默认打印
      • 1.2打印文件内容
    • 2.对行进行操作
      • 2.1 只打印行号(有多少行)
      • 2.2 打印行号和内容
      • 2.3 只打印第几行
      • 2.4打印第几行到第几行
      • 2.5 奇偶行打印
  • 三.awk运算
    • 1.整数运算加减乘除
    • 2.小数加减乘除
    • 3.取幂运算
  • 四.getline
    • 1.getline的工作过程
      • 1.1 无重定向符号
      • 1.2 左右有管道符号或重定向符时
  • 五.文件内容匹配过滤打印
    • 1.以什么为开头过滤打印
    • 2.以什么为结尾过滤打印
    • 3.BEGIN END模式
    • 4.-v的用法:变量赋值
  • 六.awk的条件判断打印
    • 1.打印第几列的数值大于多少的才打印
    • 2.取反
    • 3.条件判断
    • 4.awk的三元表达式
      • 4.1 格式
      • 4.2 用法
  • 七.awk的精确筛选
    • 1.常用选项
    • 2.示例
      • 2.1 代表第n个字段包含某个字符串
      • 2.2 代表第n个字段不包含某个字符串
      • 2.3 代表第n个字段为某个字符串
      • 2.4 代表第n个字段不为某个字符串
  • 八.awk结合数组运用
    • 1.awk中定义数组打印
    • 2.awk中的数组形成遍历
    • 3.处理文件去重统计
    • 4.示例
      • 4.1 简单的日志分割
      • 4.2 只分割前两行内容的第一个和第四个字段

一.awk概述

1.概述

awk 是一个功能强大的编辑工具,逐行读取输入文本,默认以空格或tab键作为分隔符作为分隔,并按模式或者条件执行编辑命令。

以空格做为分隔符,多个空格他会自动压缩成一个

2.作用

(1)按照命令找指定行

(2)对找到的行打印或其他操作,awk默认打印

(3)可以在无交互的情况下(不用进入真正的文件)实现相当复杂的文本操作,用于 Shell 脚本,完成各种自动化配置任务。

3.awk的工作过程

(1)先看BEGIN{action;… }这个模块是读取操作,读文件的所有行,所有读取完毕,然后一次执行

(2)END{action;… }打印,输出结果,对前面的结果条件判断,还可以用代码接着操作

4.awk 工作原理及命令格式

对行分成多个字段进行处理(切片),执行结果可以通过print的功能将字段数据打印显示

awk ’'

5.awk的基本操作及其内置变量

awk 选项 ’模式或条件(操作)‘文件1 文件2…

5.1 awk的-F操作

“分隔符” 指明输入时用到的字段分隔符,默认的分隔符是若干个连续空白符

5.2 awk的-v操作

var=value 变量赋值

注:一定是单引号:‘模式或条件 {操作}’

{ }外指定条件,{ }内指定操作。

用逗号指定连续的行,用 || 指定不连续的行。&&表示”且“。
awk {print $1,$2,$3}

5.3 内置变量

不能用双引号括起来,不然系统会把它当成字符串。

内置变量选项

选项注释
$0当前处理的行的整行内容 打印所有
$n当前处理行的第n个字段(第n列)
NR当前处理的行的行号(序数)
NF当前处理的行的字段个数。$NF代表最后一个字段
FS列分割符。指定每行文本的字段分隔符,输入内容的分隔符,默认为空格或制表位。与"-F"作用相同 用-F可以不加单引号 -F:,用FS必须用=“”
OFS输出内容的列分隔符
FILENAME被处理的文件名
RS行分隔符。awk从文件中读取资料时,
将根据RS的定义把资料切割成许多条记录,而awk一次仅读入一条记录进行处理。预设值是"\n"

二.awk 打印

1.基本打印用法

1.1 默认打印

格式:awk ‘{print}’ 文件名

例:

awk '{print}' test.txt 
11
22
33
44

1.2打印文件内容

(1)0和1放置{ }前,能够起到限制打印内容的作用(默认为"1"),如果为0,就不打印内容

格式:awk ‘0{print}’ test.txt

awk ‘1{print}’ test.txt

例:

[root@test1 ~]# awk '0{print}' test.txt 
[root@test1 ~]# awk '1{print}' test.txt 
11  qq 55
22  ww   55
33 ee  66
44    rr   77

(2)awk ‘{print $0}’ test1.txt ----$0,代表整行内容;awk是逐行读取处理,配合$0,就是打印所有内容
$1只取第一列,可以对行切片,输出列

awk '{print $1}' test.txt ——————————打印文件的第一列
11
22
33
44

(3)对/etc/passwd 取第一列和第四列

awk -F: '{print $1,$4}' /etc/passwd
root 0
bin 1
daemon 2
adm 4
lp 7
sync 0
shutdown 0
halt 0

2.对行进行操作

2.1 只打印行号(有多少行)

awk '{print NR}' /etc/passwd      #列出有多少行数

2.2 打印行号和内容

awk '{print NR,$0}' /etc/passwd
1 root:x:0:0:root:/root:/bin/bash
2 bin:x:1:1:bin:/bin:/sbin/nologin
3 daemon:x:2:2:daemon:/sbin:/sbin/nologin
4 adm:x:3:4:adm:/var/adm:/sbin/nologin
5 lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
6 sync:x:5:0:sync:/sbin:/bin/sync
7 shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
8 halt:x:7:0:halt:/sbin:/sbin/halt
9 mail:x:8:12:mail:/var/spool/mail:/sbin/nologin

2.3 只打印第几行

格式:awk ‘NR==第几行{print}’ 文件名

例:

awk 'NR==3{print}' /etc/passwd——指定打印出第三行的内容
daemon:x:2:2:daemon:/sbin:/sbin/nologin

2.4打印第几行到第几行

格式:awk ‘NR首打印行,NR末打印行{print}’ 文件名

例:

awk 'NR==3,NR==5{print}' /etc/passwd——打印3-5行的内容
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin

可用正则表达式:

awk '(NR>=3)&&(NR<=5){print}' /etc/passwd
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin

2.5 奇偶行打印

偶数行打印

awk 'NR%2==0{print NR,$0}' /etc/passwd
2 bin:x:1:1:bin:/bin:/sbin/nologin
4 adm:x:3:4:adm:/var/adm:/sbin/nologin
6 sync:x:5:0:sync:/sbin:/bin/sync
8 halt:x:7:0:halt:/sbin:/sbin/halt
10 operator:x:11:0:operator:/root:/sbin/nologin
12 ftp:x:14:50:FTP User:/var/ftp:/sbin/nologin

奇数行打印

awk 'NR%2==1{print NR,$0}' /etc/passwd
1 root:x:0:0:root:/root:/bin/bash
3 daemon:x:2:2:daemon:/sbin:/sbin/nologin
5 lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
7 shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown
9 mail:x:8:12:mail:/var/spool/mail:/sbin/nologin
11 games:x:12:100:games:/usr/games:/sbin/nologin
13 nobody:x:99:99:Nobody:/:/sbin/nologin

三.awk运算

1.整数运算加减乘除

[root@test1 ~]# awk 'BEGIN{print 20+30}'
50
[root@test1 ~]# awk 'BEGIN{print 20*30}'
600
[root@test1 ~]# awk 'BEGIN{print 20-30}'
-10
[root@test1 ~]# awk 'BEGIN{print 20/30}'
0.666667

2.小数加减乘除

[root@test1 ~]# awk 'BEGIN{print 10.23+12.11}'
22.34
[root@test1 ~]# awk 'BEGIN{print 10.23-12.11}'
-1.88
[root@test1 ~]# awk 'BEGIN{print 10.23*12.11}'
123.885
[root@test1 ~]# awk 'BEGIN{print 15/12.11}'
1.23865

3.取幂运算

[root@test1 ~]# awk 'BEGIN{print 2^3}'
8
[root@test1 ~]# awk 'BEGIN{print 2**3}'
8

四.getline

1.getline的工作过程

1.1 无重定向符号

当getline左右无重定向符号(“<”,“>”)或者管道符号(“|”)时,
awk首先读取的是第一行,而getline获取的是光标跳转至下一行的内容(也就是第二行)。

[root@test1 ~]# cat test.txt 
11  qq 55
22  ww   55
33 ee  66
44    rr   77
[root@test1 ~]# awk '{getline;print $0}' test.txt 
22  ww   55
44    rr   77

1.2 左右有管道符号或重定向符时

getline则作用定向输入文件,由于文件是刚打开,并没有被awk读入一行,
而只是getline读入,所以getline返回的是文件的第一行,而不是跳转至一行输入

原因:getline运行之后awk会改变NF,NR,$0,FNR等内部变量,所以此时读取$0的行号不再为1,而是2

[root@test1 ~]# awk '{getline < "test.txt";print $0 > "test1.txt";}' test.txt #将test的文件传送给test1文件中 
[root@test1 ~]# ls
anaconda-ks.cfg       ks.cfg     test.txt  模板  图片  下载  桌面
initial-setup-ks.cfg  test1.txt  公共      视频  文档  音乐
[root@test1 ~]# cat test1.txt 
11  qq 55
22  ww   55
33 ee  66
44    rr   77

五.文件内容匹配过滤打印

1.以什么为开头过滤打印

格式:awk ‘/^开头打印的字符/{print}’ 文件名

例:

awk '/^root/{print}' /etc/passwd————以root为开头打印
root:x:0:0:root:/root:/bin/bash

2.以什么为结尾过滤打印

格式:awk ‘/结尾的打印字符$/{print}’ 文件名

例:

awk '/nologin$/{print}' /etc/passwd————以nologin结尾打印
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin

3.BEGIN END模式

格式:awk ‘BEGIN{…};{…};END{…}’ 文件
处理过程:
1、在awk处理指定的文本之前,需要先执行BEGIN{…}模式里的命令操作
2、中间的{…} 是真正用于处理文件的命令操作
3、在awk处理完文件后才会执行END{…}模式里的命令操作。END{ }语句块中,往往会放入打印结果等语句。

[root@test1 ~]# cat test.txt 
11  qq 55
22  ww   55
33 ee  66
44    rr   77
[root@test1 ~]# awk 'BEGIN{x=1};{x++};END{print x}' test.txt
5

对字段进行处理打印:

[root@test1 ~]# head -n5 /etc/passwd |awk  -F: '{print $1}' 
root
bin
daemon
adm
lp
[root@test1 ~]# head -n5 /etc/passwd |awk  -F: '{print $2}' 
x
x
x
x
x

4.-v的用法:变量赋值

将/etc/passwd中的第一列和第二列的中间替换为+
[root@test1 ~]# fs=":";awk -v FS=$fs -v OFS="+" '{print $1,$3}' /etc/passwd
root+0
bin+1
daemon+2
adm+3

fs的是:然后使用-v给FS赋值=:,输入的时候FS是:,-v给OFS赋值输出的时候变量为+,然后打印第一列和第三列

将/etc/passwd中的第一列和第二列的中间替换为==
[root@test1 ~]# awk -v FS=':' -v OFS='==' '{print $1,$3}' /etc/passwd
root==0
bin==1
daemon==2
adm==3
lp==4
sync==5
#默认就是换行输出,不需要改
[root@test1 ~]# echo $PATH | awk -v RS=':' '{print $1}'
/usr/local/sbin
/usr/local/bin
/usr/sbin
/usr/bin
/root/bin

六.awk的条件判断打印

1.打印第几列的数值大于多少的才打印

格式:awk -F: ‘第几列>大于的数值{print $0}’ /etc/passwd

例:

[root@test1 ~]# awk -F: '$3>500{print $0}' /etc/passwd    
polkitd:x:999:997:User for polkitd:/:/sbin/nologin
libstoragemgmt:x:998:995:daemon account for 
[root@test1 ~]# awk -F: '$3<=10{print $0}' /etc/passwd    
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin

2.取反

取反,uid小于10的行,所有列

[root@test1 ~]# awk -F: '!($3>10){print $0}' /etc/passwd  
root:x:0:0:root:/root:/bin/bash
bin:x:1:1:bin:/bin:/sbin/nologin

3.条件判断

使用了if语句,内部条件(),外部条件{},整个加{}作为一条语句执行,相当于嵌套语法

[root@test1 ~]# awk -F: '{if ($3>500){print $0}}' /etc/passwd 
polkitd:x:999:997:User for polkitd:/:/sbin/nologin
libstoragemgmt:x:998:995:daemon account for 

4.awk的三元表达式

4.1 格式

格式:awk ‘(条件表达式)?(A表达式或者值):(B表达式或者值)’

4.2 用法

[root@test1 ~]# awk -F: '{max=($3>=$4)?$3:$4;{print max,$0}}' /etc/passwd|sed -n '1,6p'————————比较passwd文件中以":"为分割的第三个和第四个字段的大小,
0 root:x:0:0:root:/root:/bin/bash
1 bin:x:1:1:bin:/bin:/sbin/nologin
2 daemon:x:2:2:daemon:/sbin:/sbin/nologin
4 adm:x:3:4:adm:/var/adm:/sbin/nologin
7 lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
5 sync:x:5:0:sync:/sbin:/bin/sync

max=($3>=$4)?$3:$4:这将变量 max 设置为输入行字段 3 和 4 之间的最大值。
? : 运算符是 if-else 语句的简写,因此此行等效于 if ($3 >= $4) { max=$3 } else { max=$4 }

取比较结果的最大值,赋值给变量max,并且输出max行的所有内容,然后打印其中的1-6行;

七.awk的精确筛选

1.常用选项

选项注释
$n(> < ==)用于对比数值
$n~“字符串”代表第n个字段包含某个字符串
$n!~“字符串”代表第n个字段不包含某个字符串
$n==“字符串”代表第n个字段为某个字符串
$n!=“字符串”代表第n个字段不为某个字符串
$NF代表最后一个字段

2.示例

2.1 代表第n个字段包含某个字符串

[root@test1 ~]# awk -F: '$7~"bash" {print $1,$NF}' /etc/passwd————输出第七个字段包含“bash”所在行的第一个字段和最后一个字段
root /bin/bash
zjf /bin/bash

2.2 代表第n个字段不包含某个字符串

输出第七个字段不包含“nologin”所在行的第一个字段和最后一个字段
[root@test1 ~]# awk -F: '$7!~"nologin" {print $1,$NF}' /etc/passwd
root /bin/bash
sync /bin/sync
shutdown /sbin/shutdown
halt /sbin/halt
zjf /bin/bash

2.3 代表第n个字段为某个字符串

指定第六个字段为/home/zjf,第七个字段为/bin/bash,输出满足这些条件所在行的第一个和最后一个字段
[root@test1 ~]# awk -F: '($6=="/home/zjf")&&($7=="/bin/bash"){print $1,$NF}' /etc/passwd
zjf /bin/bash
指定第七个字段为/bin/bash 全部打印
awk -F: '$7=="/bin/bash" {print $0}' /etc/passwd
root:x:0:0:root:/root:/bin/bash
zjf:x:1000:1000:zjf:/home/zjf:/bin/bash

2.4 代表第n个字段不为某个字符串

代表第7字段不为/bin/bash的字符串全量打印
awk -F: '$7!="/bin/bash" {print $0}' /etc/passwd
bin:x:1:1:bin:/bin:/sbin/nologin
daemon:x:2:2:daemon:/sbin:/sbin/nologin
adm:x:3:4:adm:/var/adm:/sbin/nologin
lp:x:4:7:lp:/var/spool/lpd:/sbin/nologin
sync:x:5:0:sync:/sbin:/bin/sync
shutdown:x:6:0:shutdown:/sbin:/sbin/shutdown

八.awk结合数组运用

1.awk中定义数组打印

[root@test1 ~]# awk 'BEGIN{a[0]=10;a[1]=20;a[2]=30;print a[1]}' 
20

2.awk中的数组形成遍历

[root@test1 ~]# awk 'BEGIN{a[0]=10 ; a[1]=20 ; a[2]=30;for(i in a)print i,a[i]}'
0 10
1 20
2 30

3.处理文件去重统计

[root@test1 ~]# cat test2.txt
aaa
aaa
bbb
ccc
aaa
bbb
aaa 
[root@test1 ~]# awk '{a[$1]++};END{for(i in a){print i,a[i]}}' test2.txt
aaa 4
ccc 1
bbb 2

4.示例

4.1 简单的日志分割

[root@test1 ~]# awk '{print $1, $7, $9}' /var/log/messages
Jun software="rsyslogd" x-pid="706"
Jun Session of
Jun Session of#在这个命令中,我们使用单引号将awk命令的操作包含起来。
$1、$7和$9是awk的内置变量,分别表示每行日志文件中的第1、第7和第9个字段。
通过使用print命令,我们将这些字段分别打印出来,以空格分隔。
最后,我们指定日志文件的路径/var/log/messages,awk会自动对文件中的每行进行处理并输出结果。

4.2 只分割前两行内容的第一个和第四个字段

[root@test1 ~]# awk 'NR<=2{print $1, $4}' /var/log/messages
Jun test1
Jun test1

相关文章:

awk编辑器

文章目录 一.awk概述1.概述2.作用3.awk的工作过程4.awk 工作原理及命令格式5.awk的基本操作及其内置变量5.1 awk的-F操作5.2 awk的-v操作5.3 内置变量 二.awk 打印1.基本打印用法1.1 默认打印1.2打印文件内容 2.对行进行操作2.1 只打印行号&#xff08;有多少行&#xff09;2.2…...

DicomObjects.Core 3.0.17 Crack

DicomObjects.NET 核心版简介 DicomObjects.Core Assembly DicomObjects.NET 核心版简介 DicomObjects.Core 由一组相互关联但独立的 .核心兼容的“对象”&#xff0c;使开发人员能够快速轻松地将DICOM功能添加到其产品中&#xff0c;而无需了解或编程DICOM标准的复杂性。此帮助…...

电脑怎么通过网络传输文件?

可以通过网络在电脑之间传输文件吗&#xff1f; “由于天气的原因&#xff0c;我的老板决定让所有员工在家工作。但是我很多工作文件都在公司的电脑中&#xff0c;怎么才能将公司的文件远程传输到我家里的电脑上&#xff1f;电脑可以通过网络远程传输文件吗&#xff1f;” …...

人工智能之深度学习

第一章 人工智能概述 1.1人工智能的概念和历史 1.2人工智能的发展趋势和挑战 1.3人工智能的伦理和社会问题 第二章 数学基础 1.1线性代数 1.2概率与统计 1.3微积分 第三章 监督学习 1.1无监督学习 1.2半监督学习 1.3增强学习 第四章 深度学习 1.1神经网络的基本原理 1.2深度…...

性能测试设计阶段

性能测试设计阶段 性能测试是软件测试中的关键环节&#xff0c;它可以帮助我们评估软件系统在压力下的运行稳定性和性能表现。性能测试设计阶段是性能测试的基础&#xff0c;只有经过充分的设计&#xff0c;才能保证性能测试的有效性和准确性。 在性能测试设计阶段&#xff0c;…...

leetCode !! word break

方法一&#xff1a;字典树动态规划 首先,创建node类&#xff0c;每个对象应该包含:一个node array nexts(如果有通往’a’的路&#xff0c;那么对应的nexts[0]就不该为null); 一个boolean 变量&#xff08;如果到达的这个字母恰好是字典中某个候选串的结尾&#xff0c;那么 标记…...

基础学习——关于list、numpy、torch在float和int等数据类型转换方面的总结

系列文章目录 Numpy学习——创建数组及常规操作&#xff08;数组创建、切片、维度变换、索引、筛选、判断、广播&#xff09; Tensor学习——创建张量及常规操作&#xff08;创建、切片、索引、转换、维度变换、拼接&#xff09; 基础学习——numpy与tensor张量的转换 基础学习…...

华纳云美国Linux服务器常用命令分享

美国Linux服务器系统目前也是跟Windows操作系统一样用户量非常多&#xff0c;其简单的纯命令操作模式可以节省很多系统空间&#xff0c;本文小编就来分享一些美国Linux服务器系统常用的命令&#xff0c;希望能够给刚入门的美国Linux服务器系统的用户提供一些操作参考。 1、系统…...

【minio】8.x版本与SpringBoot版本不兼容报错

错误异常&#xff1a; <minio.version>8.4.3</minio.version><spring-boot.version>2.6.13</spring-boot.version>Description:An attempt was made to call a method that does not exist. The attempt was made from the following location:io.min…...

如何用chatGPT赚钱?

赚钱思路 1&#xff09;初级-账号 对于新事物的出现&#xff0c;很多人对此都是抱着一个看热闹的态度&#xff0c;大家对于这个东西的整体认知水平是很低的&#xff01; 所以这个时候的思路就是快速去抢占市场&#xff0c;去各个平台发一些和ChatGPT相关的视频和文章去抢占市…...

【Go编程语言】流程控制

流程控制 文章目录 流程控制一、if 语句1.if 嵌套语句 二、switch 语句三、for 循环四、string 程序的流程控制结构一具有三种&#xff1a;顺序结构&#xff0c;选择结构&#xff0c;循环结构 顺序结构&#xff1a;从上到下&#xff0c;逐行执行。默认的逻辑 选择结构&#xf…...

Sql Server 自动备份

Sql Server 自动备份 文章目录 Sql Server 自动备份1. 打开SQL Server&#xff0c;在管理下找到”维护计划”&#xff0c;右键点击”维护计划向导”&#xff0c;如图&#xff1b;2. 再次点击维护计划向导3. 在选择维护任务下勾选”备份数据库”、”清楚维护任务”4.选择需要备份…...

ThreadLocal的应用

1. ThreadLocal 是什么 JDK 对ThreadLocal的描述为&#xff1a; 此类提供线程局部变量。这些变量与普通变量的不同之处在于&#xff0c;每个访问一个变量的线程&#xff08;通过其get或set方法&#xff09;都有自己的、独立初始化的变量副本。ThreadLocal 实例通常是类中的私有…...

中值滤波_中值滤波原理

均值滤波是典型的线性滤波算法,它是指在图像上对目标像素给一个模板,该模板包括了其周围的临近像素(以目标象素为中心的周围8个象素,构成一个滤波模板,即去掉目标象素本身).再用模板中的全体像素的平均值来代替原来像素值.均值滤波也称为线性滤波,其采用的主要方法为领域平均法…...

day15 - 使用图像金字塔进行图像拼接

在我们之前的学习过程中&#xff0c;使用的都是恒定大小的图像&#xff0c;但是在某些情况下&#xff0c;我们需要使用不同分辨率的&#xff08;相同&#xff09;图像。例如&#xff0c;当在图像中搜索某些东西&#xff08;例如人脸&#xff09;时&#xff0c;我们不确定对象将…...

算法修炼之筑基篇——筑基一层初期(解决01背包问题)

✨博主&#xff1a;命运之光 ✨专栏&#xff1a;算法修炼之练气篇​​​​​ ✨博主的其他文章&#xff1a;点击进入博主的主页 前言&#xff1a;学习了算法修炼之练气篇想必各位蒟蒻们的基础已经非常的扎实了&#xff0c;下来我们进阶到算法修炼之筑基篇的学习。筑基期和练气期…...

JVM的空间结构

目录 一、概述 二、分类 1.程序计数器区域(Program Counter Register)&#xff1a; 2.Java虚拟机栈(Stack)&#xff1a; 3.堆区(Heap)&#xff1a; 4.方法区(Method Area)&#xff1a; 5.本地方法栈(Native Method Stack)&#xff1a; 一、概述 JVM分为5个主要区域&…...

图像分割的常用算法

图像分割是指将一幅图像划分成多个子区域或像素集合的过程&#xff0c;其中每个子区域或像素集合具有一定的统计特征或语义信息。图像分割是图像处理中的基础任务&#xff0c;其应用涵盖了医学影像、计算机视觉、机器人技术等多个领域。常用的图像分割算法包括&#xff1a; 1.…...

AI歌手真的可以吗

你听过AI歌手吗&#xff1f;近日&#xff0c;“AI孙燕姿”火遍全网&#xff0c;AI孙燕姿翻唱林俊杰的《她说》、周董的《爱在西元前》、赵雷的《成都》等等歌曲让网友听了直呼&#xff1a;“听了一晚上&#xff0c;出不去了。”你认为AI歌手会取代流行歌手成为主流吗&#xff1…...

Kubernetes高级存储

Kubernetes高级存储 PV PVC k8s支持的存储系统很多&#xff0c;全部掌握不现实。为了屏蔽底层存储实现的细节&#xff0c;方便用户使用&#xff0c;k8s引入PV和PVC两种资源对象。 PV(Persistent Volume)持久化卷&#xff0c;对底层共享存储的抽象&#xff0c;一般由k8s管理员进…...

云原生之使用Docker部署docker-compose-ui工具

云原生之使用Docker部署docker-compose-ui工具 一、Docker Compose UI介绍二、检查本地docker环境1.检查系统版本2.检查docker状态 三、下载Docker Compose UI镜像四、部署Docker Compose UI服务1.新建安装目录2.创建Docker Compose UI容器3.检查Docker Compose UI容器状态4.查…...

文心一言 vs GPT4

本周真是科技爱好者的狂欢节。GPT4和文心一言接连发布&#xff0c;AI工具已经开始走进千家万户。 拿文心一言发布会上的几个问题调戏了 GPT4 一下&#xff0c;看看表现如何。 第一个为文心的回答&#xff0c;第二个为GPT4 的回答。 1. 可以总结一下三体的核心内容吗&#xf…...

Tcl-5. format 命令

format 命令和 C 语言中的 printf 和 sprintf 命令类似。它根据一组格式说明来格式化字符 串。此命令不会改变被操作字符串的内容。 [语法]&#xff1a;format spec value1 value2 ... spec 变元包含了格式说明关键词和附加文字。使用%来引入一个关键词&#xff0c;后跟 0 个…...

BloombergGPT: 首个金融垂直领域大语言模型

BloombergGPT: 首个金融垂直领域大语言模型 Bloomberg 刚刚发布了一篇研究论文&#xff0c;详细介绍了他们最新的突破性技术 BloombergGPT。BloombergGPT是一个大型生成式人工智能模型&#xff0c;专门使用大量金融数据进行了训练&#xff0c;以支持金融行业自然语言处理 (NLP…...

CMake深度解析:掌握add_custom_command,精通Makefile生成规则

CMake深度解析&#xff1a;掌握add_custom_command&#xff0c;精通Makefile生成规则 1. CMake简介与基础知识1.1 CMake的基本概念&#xff08;CMake Basic Concepts&#xff09;1.1.1 项目&#xff08;Project&#xff09;1.1.2 目标&#xff08;Target&#xff09;1.1.3 命令…...

基于Yolov5目标检测的物体分类识别及定位(二) -- yolov5运行环境搭建及label格式转换

刚开始跟着网上的教程做&#xff0c;把环境安装错了&#xff0c;后来直接用GitHub的官方教程来安装环境。 地址是yolov5官方团队代码及教程&#xff0c;看readme文件就可以。 系列文章&#xff1a; 基于Yolov5目标检测的物体分类识别及定位&#xff08;一&#xff09; -- 数据集…...

Office project 2019安装

哈喽&#xff0c;大家好。今天一起学习的是project 2019的安装&#xff0c;Microsoft Office project项目管理工具软件&#xff0c;凝集了许多成熟的项目管理现代理论和方法&#xff0c;可以帮助项目管理者实现时间、资源、成本计划、控制。有兴趣的小伙伴也可以来一起试试手。…...

【leetcode-mysql】1251. 平均售价

题目&#xff1a; Table: Prices ---------------------- | Column Name | Type | ---------------------- | product_id | int | | start_date | date | | end_date | date | | price | int | ---------------------- (product_id&#xff0c;start_date&#xff0c;end_dat…...

Razor代码复用

1.布局&#xff08;Layout&#xff09;复用 Layout的使用&#xff0c;就像WebForm的模板页一样&#xff0c;甚至会更加简单&#xff0c;更加方便和明了。 要使用Layout&#xff0c;首先要在模板页相应的位置添加RenderBody()方法&#xff1a; <!DOCTYPE html><html la…...

PRL:上海交大张文涛团队实现量子材料相关突破

来源&#xff1a;上海交通大学 近期&#xff0c;上海交通大学物理与天文学院张文涛研究组利用自行研制的高能量和高时间分辨率角分辨光电子能谱系统对量子材料1T-TiSe₂电子结构进行了超快激光操控研究。利用超快光激发与电荷密度波相有关的相干声子&#xff0c;引起晶格内原子…...