• Linux高级笔记


    Linux高级
    [
    一、高级
    1、Linux系统概述和安装
    1.1Linux系统
    1.2

    1.6登录并查看IP地址
    ifconfig
    1.7Linux连接工具CRT使用CRT
    1.7.4文件上传:
    一:基于CRT的alt+p
    二:使用linux的上传工具进行上传
    1)安装上传工具:yum -y install lrzsz
    2) 输入上传命令:rz
    1.7.5文件下载
    1)sz 文件
    2、Linux基础命令
    2.1终端命令格式
    command [-optitions] [parameter]
    说明:
    command:命令名,相应功能的英文单词或缩写
    options:选项,可用来对命令进行控制,也可以省略
    parameter :传入参数
    2.2技巧
    2.2.2曾经使用过的命令
    1、使用上/下 光标可以在曾经使用过的命令之间来回切换
    2,退出,并且不想执行当下前命令,可以按ctrl+C

    	2.3显示文件类表命令
    		ls是英文单词list的缩写,其功能为列出目录的内容
    		ls如果只使用ls命令只能看到当前目录下非隐藏文件
    		-a 显示指定目录下所有子目录与文件,包含隐藏文件
    		-l 以列表方式显示文件的详细信息
    		-h 配合 -l 以人性化的方式显示文件大小
    		常见使用命令:
    			ls #查看当前目录内容(缺点:隐藏文件看不到,开头的文件)
    			ls -a 包括隐藏文件
    			ls -al 查看文件类型,权限,大小
    			ls -lh 以K,M,G方式显示文件大小
    			ls /root #查看/root目录下内容
    			ll #等价于ls -l 
    	2.4目录查看、目录创建和目录删除
    		2.4.1 pwd
    		2.4.2 mkdir命令  该命令用于创建目录
    			注意:新建的目录的名称不能与当前目录中  已有的目录或文件 同名
    			1)创建没有层级的关系目录
    				mkdir 目录名
    			2)创建有层级的目录
    				mkdir -p 目录1/目录2/目录3
    				mkdir -p /root/aaa/bbb
    		2.4.3 rm命令
    			该命令用于删除文件或者目录
    			-f force(强制) 强制删除,忽略不存在的文件或目录,无需提醒
    			-r recursive(递归) 递归地删除目录下的内容,删除目录时必须加持删除
    			使用方法:
    				rm -r 目录 #删除目录有提醒
    				rm -fr 目录 #直接删除目录(不管有没有内容)
    				rm -f 文件名 #强制删除一个文件
    	2.5目录切换 cd
    	2.6 文件操作命令
    		2.6.1 touch 命令
    			touch命令创建文件
    			touch a.txt #在当前目录创建a.txt文件
    			touch /root/a.txt #在/root目录创建a.txt文件
    		2.6.2mv命令	
    			通过mv 命令可以用来移动文件或目录,也可以给文件 活目录重命名
    			1)将文件移动另一个目录中:
    				mv 文件 目录/
    				touch a.txt	
    				mkdir dir
    				mv a.txt dir
    			2)重命名
    				mv 旧文件名 新文件名
    				mv a.txt b.txt #重命名文件
    				mv  dir1 dir2  #重命名目录
    			3)将目录移动 到 另一个目录中
    				mv 被移动目录 目标目录
    				mv dir  /
    		2.6.3 cat/more/less 命令
    			cat命令
    				cat 文件路径
    			more命令
    				分页显示文件内容,还支持直接跳转行等功能
    			语法:more 文件路径
    			相关操作:
    				Enter:向下n行,需要定义,默认1行
    				空格键:向下滚动一屏 或 Ctrl +F
    				B键:返回上一屏或Ctrl + B
    				q:退出more
    			less
    				分页显示文件内容,还支持直接跳转等功能
    				语法:more filePath
    					空格键: 前进一页 或 page down
    					b : 后退一页 或 page up
    					d : 前进半页
    					u : 后退半页
    
    		2.6.4 cp命令
    			cp a.txt dir  # 将a.txt复制到dir1目录
    			cp a.txt b.txt #将a.txt复制到b.txt
    	2.7 文件查找命令
    		2.7.1 find指令
    			用于查找符合条件的文件
    			示例:
    				find / -name 'ins*' #查找/目录下以文件名ins开头的文件
    				find / -type f -size +100M # 查找/目录下文件大小大于100M的文件
    		2.7.2 grep 命令
    			grep命令可对文件文本查询
    			grep hello  anaconda-ks.cfg#在文件中查到lang
    	2.8 压缩和解压缩命令tar
    		查数解释:
    		参数	解释
    		-c	创建一个新的tar文件
    		-v	显示运行过程的信息
    		-f	指定文件名
    		-z 	调用gzip压缩命令进行压缩
    		-x	解开tar文件
    		2.8.1解压
    			tar -zxvf 压缩文件 [-C][指定解压目录]
    			示例:
    				tar -zxvf redis-3.2.8.tar.gz # 将文件解压到当前目录
    				tar -xvf redis-3.2.8.tar # 将文件解压到当前目录 (非压缩文件)
    				tar -zxvf redis-3.2.8.tar.gz # 将文件解压到指定明目录
    		2.8.2 压缩
    			tar -c[z]vf 压缩文件 目录
    				tar -cvf test.tar /root/test # 打包
    				tar -czvf test.tar.gz /root/test #打包并压缩
    	2.9 系统管理命令
    		2.9.1 ps命令
    			ps命令用来列出系统中当前运行的哪些进程
    			ps -ef #查看所有进程
    		2.9.2 kill命令
    			kill命令用于终止执行中的程序
    			kill -9 12345 #杀死pid为12345的进程
    		2.9.3管道命令
    			ps -ef | grep java #查询名称中包含java的进程
    	2.10 用户的创建和删除命令
    		2.10.1 用户创建和密码设置
    			useradd 用户名
    			passwd 用户密码
    		2.10.2 用户删除
    			user -r 用户名
    			userdel -r iz
    	2.11 权限管理命令
    		2.11.1文件权限概述
    			-rwxrwxr-- ;r:读取权4;w:写入权2;x:执行权1
    			文件类型 属主权限 属组权限 其他用户权限
    		2.11.3 chmod命令
    			chmod 666 a.txt 
    			chmod u+x a.txt
    			chmod u =rwx,g=rw,o=x a.txt
    	2.12 网络和服务管理命令
    		2.12.1.ifconfig命令
    			查看主机ip地址
    		2.12.2 systemctl命令
    			systemctl命令是用来控制系统服务的实用工具,启动,停止,重新启动和关闭系统服务,还可以显示当前服务的当前状态
    			服务管理命令	功能
    				systemctl start 服务名	开启服务
    				systemctl stop 服务名	关闭服务
    				systemctl status 服务名	显示服务状态
    				systemctl enable 服务名	设置开机自启动
    				systemctl disable 服务名	关闭开机自启动
    
    
    	2.13磁盘管理命令
    		df -h	disk free显示磁盘剩余空间
    		du -h [目录名] disk usage 显示目录下的目录大小
    		free -h 查看内存使用率
    	2.14 时间和日期
    		命令	作用
    		date	查看系统时间(默认)
    		date +“%Y-%m-%d %H:%M:%S” 查看系统时间(指定格式)
    		date -s "时间字符串" 设置系统时间
    	2.15其他命令
    		2.15.1.ln 命令
    		ln命令可以用来创建软连接,类似于创建快捷方式
    		命令格式:
    			ln[参数][源文件或目录][目标文件或目录]	
    			实例:
    			ln -s 2.txt 1.txt
    		2.15.2 clear命令
    			清屏命令,还可以使用快捷键:ctrl+l
    		2.15.3关机重启
    			reboot :重启
    			shutdown -h now:马上关机(断电关机)
    			halt:立刻关机(centos)(不断电关机)
    		
    	2.16vi编辑器vim编辑器
    		2.16.1命令行模式常用命令
    		2.16.2 vim编辑器
    		2.16.4 命令行模式常用命令
    		2.16.5 低行模式常用命令
    			:w 文件 另存为
    			:w 保存(ctrl+s)
    			:q 退出,如果没有保存,不允许退出
    			:q! 强行退出,不保存退出
    			:wq 保存并退出
    			:x 保存并退出
    			:set nu 设置行号
    			:%s/旧文本/新文本/g  文本替换
    		2.16.6 异常处理
    			如果vi异常退出,在磁盘上可能会保存有交换文件
    			下次再使用vi编辑文件时,会看到以下屏幕信息,按下字母d删除交换文件即可	
    			然后,回到文件编辑目录,删除生成的隐藏文件,如
    			rm .Hello.java.swp -fr
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42
    • 43
    • 44
    • 45
    • 46
    • 47
    • 48
    • 49
    • 50
    • 51
    • 52
    • 53
    • 54
    • 55
    • 56
    • 57
    • 58
    • 59
    • 60
    • 61
    • 62
    • 63
    • 64
    • 65
    • 66
    • 67
    • 68
    • 69
    • 70
    • 71
    • 72
    • 73
    • 74
    • 75
    • 76
    • 77
    • 78
    • 79
    • 80
    • 81
    • 82
    • 83
    • 84
    • 85
    • 86
    • 87
    • 88
    • 89
    • 90
    • 91
    • 92
    • 93
    • 94
    • 95
    • 96
    • 97
    • 98
    • 99
    • 100
    • 101
    • 102
    • 103
    • 104
    • 105
    • 106
    • 107
    • 108
    • 109
    • 110
    • 111
    • 112
    • 113
    • 114
    • 115
    • 116
    • 117
    • 118
    • 119
    • 120
    • 121
    • 122
    • 123
    • 124
    • 125
    • 126
    • 127
    • 128
    • 129
    • 130
    • 131
    • 132
    • 133
    • 134
    • 135
    • 136
    • 137
    • 138
    • 139
    • 140
    • 141
    • 142
    • 143
    • 144
    • 145
    • 146
    • 147
    • 148
    • 149
    • 150
    • 151
    • 152
    • 153
    • 154
    • 155
    • 156
    • 157
    • 158
    • 159
    • 160
    • 161
    • 162
    • 163
    • 164
    • 165
    • 166
    • 167
    • 168
    • 169
    • 170
    • 171
    • 172
    • 173
    • 174
    • 175
    • 176
    • 177

    Linux 高级命令
    4.1重定向 >
    Linux 允许将命令执行结果重新定向到一个文件,本应显示在终端上的内容保存到指定文件中。如:
    ls >test.txt (test.txt如果不存在,则创建,存在则覆盖其内容)
    重定向 >>
    这个是将输出内容追加到目录文件中,如果文件不存在就创建文件,如果文件存在,则将新的内容追加到那个文件的末尾,该文件中的原有内容不受影响
    4.2cut命令
    cut:文件内容查看命令,cut命令可以从一个文本文件或者文本流中提取文本列
    cut命令参数解释
    -b 按照直接选取 忽略多字节字符边界
    -c 仅显示行中指定范围的字符
    -d 自定义分割符,默认为制表符
    -f 与-d一起使用,指定显示哪个区域
    -n 与-b选项连用,不分割多字节字符
    –complement 补足被选择的字节,字符或字段
    –out -delimiter=<字段分割符> 指定输出内容是的字段分割符;
    –help 显示指定的帮助信息
    –version 显示指定的版本信息
    如果有一个学生报表信息文件stu.txt 包含id name age score

    		d name age score
    		tom 18 78
    		jack 20 85
    	1)使用-d和-f显示文件中的指定的列
    		cut -d  " " -f 1 stu.txt
    			id
    			01
    			02
    		cut -d " " -f 2,3 stu.txt
    			name age
    			tom	18
    			jack 	20
    		解释:
    			-d  " ": 用来指定文件字段之间的分隔符,如果文件的分隔符是制表符则不需要指定该参数
    			-f 数字:用来指定哪一列
    	2)--complement 选项提取指定字段之外的列(打印除了第二列之外的列)
    		[root@node1 shell]# cut -d " " -f 2 --complement stu.txt
    			id age score
    			01 18 78
    			02 20 85
    	3)指定字段的字符或者字节范围
    		cut命令可以将一串字符作为列来显示,字符字段的记法
    			N-:从第N个字节、字符、字段到结尾;
    			N-M:从第N个字节、字符、字段到第M个(包括M在内)字节、字符、字段;
    			-M:从第1个字节、字符、字段到第M个(包括M在内)字节、字符、字段。
    		#打印第一个到第4个字符
    			cut -c 1-4 stu.txt
    				id n
    				01 t
    				02 j
    
    			#打印前2个字符:
    			cut -c -2 stu.txt
    				id
    				01
    				02
    			#打印从第5个字符开始到结尾
    			cut -c 5- stu.txt
    				ame age score
    				om 18 78
    				ack 20 85
    
    	4.3 sort命令
    		4.3.1可以对文本文件的内容,以行为单位来排序
    			4.3.2路径
    			第一步:对字符串排序
    			第二步:去重排序
    			第三步:对数值排序
    			第四步:对成绩排序
    		# sort  sort_demo1.txt
    			-u unique 去掉重复的
    				sort -u sort_demo1.txt 
    			-n numeric-sort 按照数值大小排序
    			-r reverse 使次序颠倒
    				升序
    					sort -n sort_demo2.txt 
    				降序
    					sort -n -r sort_demo2.txt  
    			-t field-separator 指定字段分隔符
    			-k key 根据那一列排序
    				# cat sort_demo3.txt | sort -t ' ' -k 2 -n -r 排序以空格符为分割符,按照第2列进行降序排列
    	4.4uniq命令
    		uniq 命令用于检查及删除文本文件中重复出现的行,一般与 sort 命令结合使用,通过sort排序将相同的行放在一起,然后实现去重。
    			实现1:简单去重,必须要加sort
    				 cat uniq_demo.txt  |sort| uniq  
    			实现2: 实现去重效果(按照成绩排序,降序,去重)
    				cat uniq_demo.txt | sort -t ' ' -k 2 -n -r | uniq 
    		
    			4.4.3.2.第二步:不但去重,还要统计出现的次数
    				-c	count	统计每行内容出现的次数
    					 cat uniq_demo.txt |sort| uniq -c
    	4.5wc命令
    		wc命令:统计行数 单词数 字节数
    			在默认的情况下,wc将计算指定文件的行数,字数以及字节数
    				命令使用格式为:
    				wc 文件名
    				-l	统计行数
    				-c 	统计字节数
    				-w	统计单词数
    				-m	统计字符数
    			1)统计指定文件行数、字数、字节数
    				wc test_wc.txt 
    				6 21 85 test_wc.txt
    				#行数为6, 单词数为21, 字节数为85
    			2)查看跟目录下有多少个文件
    				ls / | wc -w
    				
    	4.6awk命令
    		awk是一种处理文本文件的命令,是一个强大的文本分析工具,它支持分段,默认每行空格或TAB分割。简单来说awk就是把文件逐行读入,以空格为默认分割符将每行切片,切开的部分再进行各种分析处理
    简单来说awk就是把文件逐行的读入,以空格为默认分隔符将每行切片,切开的部分再进行各种分析处理。
    		语法:
    			awk [-F field-separator] 'commands' input-file(s) 
    			或
    			awk -F|-f|-v 'BEGIN{ } / / {comand1;comand2} END{ }' file
    			-F 定义列分隔符
    			-f 指定调用脚本
    			-v 定义变量
    			' '引用代码块,awk执行语句必须包含在内
    			BEGIN{ } 初始化代码块,在对每一行进行处理之前,初始化代码,主要是引用全局变量,设置FS分隔符
    			{ } 命令代码块,包含一条或多条命令
    			// 用来定义需要匹配的模式(字符串或者正则表达式),对满足匹配模式的行进行上条代码块的操作
    			END{ }  结尾代码块,在对每一行进行处理之后再执行的代码块,主要是进行最终计算或输出结尾摘要信息
    		脚本方式
    			将所有的awk命令插入到一个文件,并使awk程序可执行,然后awk命令解释器作为脚本的首行,通过键入脚本名称来调用。相当于shell脚本首行的:#!/bin/sh可以换成#!/bin/awk.
    		变量分配:
    			$0 代表整个文本行;
    			$1 代表文本行中的第 1 个数据字段;
    			$2 代表文本行中的第 2 个数据字段;
    			$n 代表文本行中的第 n 个数据字段。
    			实例:
    				案例1: 打印test_awk.txt第1段
    					awk '{print $1}' test_awk.txt
    				案例2: 打印出test_awk.txt的第1,2,3段
    					awk '{print $1,$2,$3}' test_awk.txt
    				案例3:打印出1.txt的第1,2,3段,并且使用#号连接
    					awk '{print $1"#"$2"#"$3}' test_awk.txt
    			段之间的连接符OFS	
    				OFS用来指定输出记录分隔符
    					案例1::打印1,2,3段,指定#为连接符
    						awk '{OFS="#"}{print $1,$2,$3}' test_awk.txt
    		4.6.1指定分割符
    			-F 来指定分割符
    				准备工作,现在有个test_awk2.txt,内容如下:	aaa:111:333
    					案例1: 打印出test_awk2.txt的第1段
    						awk -F ':' '{print $1}' test_awk2.txt
    					案例2: 打印出test_awk2.txt的所有段
    						awk -F ':' '{print $0}' test_awk2.txt
    					案例3: 打印出test_awk2.txt的第1,3段
    						awk -F ':' '{print $1,$3}' test_awk2.txt
    		4.6.2内容匹配
    			这里的内容匹配需要使用正则表达式,常用的正则表达式规则如下:
    				  	1、^linux 以linux开头的行
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42
    • 43
    • 44
    • 45
    • 46
    • 47
    • 48
    • 49
    • 50
    • 51
    • 52
    • 53
    • 54
    • 55
    • 56
    • 57
    • 58
    • 59
    • 60
    • 61
    • 62
    • 63
    • 64
    • 65
    • 66
    • 67
    • 68
    • 69
    • 70
    • 71
    • 72
    • 73
    • 74
    • 75
    • 76
    • 77
    • 78
    • 79
    • 80
    • 81
    • 82
    • 83
    • 84
    • 85
    • 86
    • 87
    • 88
    • 89
    • 90
    • 91
    • 92
    • 93
    • 94
    • 95
    • 96
    • 97
    • 98
    • 99
    • 100
    • 101
    • 102
    • 103
    • 104
    • 105
    • 106
    • 107
    • 108
    • 109
    • 110
    • 111
    • 112
    • 113
    • 114
    • 115
    • 116
    • 117
    • 118
    • 119
    • 120
    • 121
    • 122
    • 123
    • 124
    • 125
    • 126
    • 127
    • 128
    • 129
    • 130
    • 131
    • 132

    2、$php 以php结尾的行
      3、. 匹配任意单字符
       4、.+ 匹配任意多个字符
       5、 .* 匹配0个或多个字符(可有可无)
       6、 [0-9a-z] 匹配中括号内任意一个字符
       7、 (linux)+ 出现多次Linux单词
       8、 (web){2} web出现两次以上
    9、\ 屏蔽转义
    实例:
    案例1: 匹配test_awk2.txt中包含cc的内容
    awk ‘/cc/’ test_awk2.txt
    案例2: 匹配test_awk2.txt中第1段包含cc的内容
    awk -F ‘:’ ‘$1 ~ /cc/’ test_awk2.txt
    案例3: 匹配test_awk2.txt中第1段包含至少连续两个c的内容
    awk -F ‘:’ ‘$1 ~ /cc+/’ test_awk2.txt
    案例4: 在test_awk2.txt中如果匹配到aaa就打印第1,3段,如果匹配到ccc,就打印第1,3,4段
    awk -F ‘:’ ‘/aaa/ {print $1,$3} /ccc/ {print $1,$3,$4}’ test_awk2.txt
    案例5: 在test_awk2.txt中如果匹配到aaa或者ddd,就打印全部内容
    awk -F ‘:’ ‘/aaa|ddd/ {print $0}’ test_awk2.txt

    		4.6.3段内容判断
    			在awk命令中,支持很多运算符,使用这些运算符可进行段内容判断
    				案例1:在test_awk2.txt中如果第3段等于222就打印所有内容
    					awk -F ':' '$3==222 {print $0}' test_awk2.txt
    				案例2:在test_awk2.txt中如果第3段等于333就打印第一段
    					awk -F ':' '$3==333 {print $1}'  test_awk2.txt
    				案例3:在test_awk2.txt中如果第5段不等于cccc就打印全部
    					awk -F ':' '$5!="cccc" {print $0}' test_awk2.txt
    				案例4:在test_awk2.txt中如果第1段等于ccc,并且第2段大于300就打印全部
    					awk -F ':' '$1=="ccc" && $2>300 {print $0}' test_awk2.txt
    				案例5:在test_awk2.txt中如果第1段等于ccc,并且第2段匹配666就打印全部
    					awk -F ':' '$1=="ccc" && $2==666 {print $0}' test_awk2.txt
    		4.6.8NR行号和NF段数
    				NF 一条记录的字段的数目
    				NR 已经读出的记录数,就是行号,从1开始
    			案例1:打印test_awk2.txt全部内容显示行号
    				awk -F ':' '{print NR " : " $0}' test_awk2.txt 
    			案例2:打印test_awk2.txt全部内容显示段数
    				awk -F ':' '{print NF " : " $0}' test_awk2.txt 
    			案例3: 从test_awk2.txt的前3行中匹配出第2段等于 666,并显示行号
    				awk -F ':' 'NR<=3 && $2==666 {print $0}' test_awk2.txt
    
    		4.6.9分段求和
    			awk 中还可以指定脚本命令的运行时机。awk会从输入中读取一行文字,然后针对该行的数据执行程序脚本,但有时可能需要在处理数据前运行一些脚本命令,这就需要使用begin关键字。
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24

    BEGIN 会强制awk在读取数据前执行该关键字后指定的脚本命令。

    			案例1:  对test_awk2.txt中的第2段求和
    				awk -F ':' 'BEGING{total=0}{total=total+$2}END{print total}' test_awk2.txt 
    		综合案例
    			案例1:  统计当前目录下所有文本文件的大小
    					$5 为ll命令结果的第五列,该列刚好是显示文件的大小
    						ll | awk 'BEGIN{total=0}{total=total+$5} END{print(total)}'
    			案例2:求总成绩
    					awk的代码还可以放在一个脚本中,脚本的后缀是.awk,执行脚本的语法: awk -f 脚本名 源文件
    				需求:
    					有个文件score.txt,记录每个学生的成绩,要计算学生总成绩和平均成绩,文件内容如下:
    					(名字, 学号,数学成绩,英语成绩、计算机成绩)
    					代码:
    					cal.awk
    					#!/bin/awk -f
    					#运行前
    					BEGIN {
    							math = 0
    						 english = 0
    						 computer = 0
    							printf "NAME    NO.   MATH  ENGLISH  COMPUTER   TOTAL\n"
    							printf "---------------------------------------------\n"
    							}
    					#运行中
    						{
    								math+=$3
    	  						english+=$4
    								computer+=$5
    								printf "%-6s %-6s %4d %8d %8d %8d\n", $1, $2, $3,$4,$5, $3+$4+$5
    							}
    					#运行后
    						END {
    								printf "---------------------------------------------\n"
    								printf "  TOTAL:%8d %8d %8d \n", math, english, computer
    								printf "AVERAGE:%8.2f %8.2f %8.2f\n", math/NR, english/NR, computer/NR
    						}
    				
    					执行脚本并查看结果:	
    						[root@node1 shell]# awk -f cal.awk score.txt 
    								NAME    NO.   MATH  ENGLISH  COMPUTER   TOTAL
    								---------------------------------------------
    								Marry  2143     78       84       77      239
    								Jack   2321     66       78       45      189
    								Tom    2122     48       77       71      196
    								Mike   2537     87       97       95      279
    								Bob    2415     40       57       62      159
    								---------------------------------------------
    								TOTAL:       319      393      350 
    								AVERAGE:     63.80    78.60    70.004
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42
    • 43
    • 44
    • 45
    • 46
    • 47
    • 48

    ]

  • 相关阅读:
    编写一个程序,输入一个字符串,统计其中各个不同字符的出现次数。
    【C++】模板进阶
    sqllabs第46关 order by 注入(通过盲注)
    Unity制作影视互动游戏视频加密方案分享
    关于Linux系统之VM安装配置(每一个步骤都超级详细的哦!)
    做一篇人人能搞懂的ThreadLocal(源码)
    云计算与大数据第6章 云计算节能技术题库及答案
    策略模式适用场景与具体实例解析
    【Book And Paper 】
    一些封装好、使用度高的Api(JavaScript)
  • 原文地址:https://blog.csdn.net/qq_43528451/article/details/126577989