一、通过网络配置命令,让主机可以上网。 ip, netmask, gateway, dns,主机名。相关命令总结,最终可以通过这些配置让你的主机上网
ifconfig命令:
可显示当前网络接口信息(可以使用ip a来代替)
route命令:用于查看和管理路由
route -n :查看路由
字段解释:
netstat命令:用于显示网络连接
例如:
hostname命令:修改主机名称,但是临时生效的,重启后就会消失。
hostnamectl 命令:写配置文件可永久生效
二、解析/etc/sysconfig/network-scripts/ifcfg-eth0配置格式。
常用配置:
TYPE | 接口类型 |
DEVICE | 设备名称 |
IPADDR | 指定IP地址 |
PREFIX | 网络ID数 |
GATEWAY | 默认网关 |
DNS1 | 第一个DNS服务地址 |
DNS2 | 第二个DNS服务地址 |
NAME | 配置文件用到的设备 |
UUID | 对应设备的MAC地址 |
三、基于配置文件或命令完成bond0配置
1、先添加两块相同的网卡:仅主机模式
2、写配置文件
3、拉起网卡
4、测试
四、通过ifconfig命令结果找到ip地址
五、使用脚本判断 你主机所在网络内在线的主机IP有哪些? ping通则在线
参考:
六、使用while read line和/etc/passwd,计算用户id总和
参考:
七、总结索引数组和关联数组,字符串处理,高级变量使用及示例
声明数组:
#普通数组可以不事先声明,直接使用 declare -a ARRAY_NAME
#关联数组必须先声明,再使用 declare -A ARRAY_NAME
declare -a :显示所有数组
范例:
引用所有数组:
数组的长度,既数组中元素的个数:
数组的所哟下标:
删除整个数组:
关联数组:
关联数组格式:declare -A NAME
字符串处理:
基于偏移量取字符串
查找替换:
查找并删除:
字符大小写转换:
evel 命令:
范例:可用eval二次展开
八、求10个随机数的最大值与最小值
参考:
九、使用递归调用,完成阶乘算法实现
十、解析进程和线程的区别? 解析进程的结构
进程:
进程是运行中的程序。进程是一个具有一定独立功能的程序在一个数据集上的一次动态执行的过程,是操作系统进行资源分配
线程:
进程与线程的区别:
十一、结合进程管理命令,说明进程各种状态
pstree 命令:可以用来显示进程的父子关系,以树状结构显示。
常用选项:
ps 命令:可以查看进程当前状态的快照,默认显示当前终端中的进程,Linux系统各进程的相关信息均保存在/proc/PID目录下的各文件中。
USER | 进程属主 |
PID | 进程ID |
%CPU | CPU使用率 |
%MEM | 内存占用率 |
VSZ | 虚拟内存集,线性内存,虚拟内存 |
RSS | 常驻内存集,实际占用物理内存 |
TTY | 终端 |
STAT | 进程状态 |
START | 进程开始时间 |
TIME | 累计分配给进程的cpu时长 |
COMMAND | 对应进程及参数 |
进程状态字段说明:
STAT字段 | 说明 |
R | 运行中 |
S | 可中断的睡眠状态 |
D | 不可中断的睡眠状态 |
T | 停止态 |
Z | 僵尸态 |
+ | 前台进程 |
I | 多线程进程 |
L | 内存分页并带锁 |
N | 低优先级进程 |
< | 高优先级进程 |
s | 子进程发起者 |
十二、说明IPC通信和RPC通信实现的方式
IPC通信:指设备内不同进程间的通信
1、管道,单向传输
2、套接字文件,双工通信
3、文件映射,将文件中的一段数据映射到物理内存,多个进程共享这个内存
4、共享内存
5、信号
6、对资源上锁,如果资源已被某进程锁住,则其他进程想使用这些资源,都将被堵塞,知道锁被打开。
7、信号量,一种计数器
RPC通信:指不同设备间的通信
1、PRC 远程调用
2、MQ 消息队列
十三、总结Linux,前台和后台作业的区别,并说明如何在前台和后台中进行状态转换
前台作业:
1、通过终端启动的进程,它会一直占用终端输入和输出,直到进程运行结束或暂停
2、当用户在终端中启动一个命令时,该命令默认会以前台作业的方式运行
3、在前台运行的作业会将输出直接显示在终端上,用户可以与作业进行交互
后台作业
1、后台作业是指在终端中启动的进程,但它不会占用终端的输入和输出,而是在后台静默运行
2、用户可以在命令末尾使用&符号将命令放到后台运行,或者使用CTRL+z暂停一个前台作业并将其放到后台运行。
让作业在后台运行:
1、运行中的作业:Ctrl+Z(将前台作业送往后台执行,不过使用该方式操作,该进程在后台处于暂停状态)
2、尚未启动的作业:COMMAND &(将前台作业送往后台执行)
查看终端所有作业:jobs
fg:
使用fg命令可以将后台作业调到前台来执行
语法格式:fg [[%]作业号] ,此处%可以省略
默认是不接作业号,默认是将执行带有+号的作业
bg:
使用bg命令可以将后台的作业继续运行
语法格式:bg [[%]作业号],此处%号可以省略
如果不接作业号,默认是将执行带有+号的作业
kill:(内部命令,可用来向进程发送控制信号,以实现对进程管理,每个信号对应一个数字,信号名称以 SIG开头(可省略),不区分大小写)可以终止指定的作业。