第六周 进程和计划任务

1、编写脚本实现登陆远程主机。(使用expect和shell脚本两种形式)。

(1)expect脚本

[root@centos8 ~]#vim expect.sh

[root@centos8 ~]#cat expect.sh

#!/usr/bin/expect

spawn ssh 192.168.203.131

expect {

            "yes/no" { send "yes\n";exp_continue }

            "password" { send "123456\n" }

}

interact

(2)shell脚本

[root@centos8 ~]#vim shell1.sh

[root@centos8 ~]#cat shell1.sh

#!/bin/bash

ip=192.168.203.131

user=root

password=123456

expect <<EOF

spawn ssh $user@$ip

expect {

            "yes/no" { send "yes\n";exp_continue }

            "password" { send "$password\n" }

}

expect eof

EOF

[root@centos8 ~]#chmod +x shell1.sh

[root@centos8 ~]#./shell1.sh

spawn ssh root@192.168.203.131

root@192.168.203.131's password:

Last login: Mon Dec 27 21:49:53 2021 from 192.168.203.131 

2、生成10个随机数保存于数组中,并找出其最大值和最小值

[root@centos8 ~]#vim max_min.sh

[root@centos8 ~]#cat max_min.sh

#!/bin/bash

declare -i max min

declare -a nums

for ((i=0;i<10;i++));do

nums[$i]=$RANDOM

[ $i -eq 0 ] && max=${nums[0]} && min=${nums[0]} && continue

[ ${nums[$i]} -gt $max ] && max=${nums[$i]}

[ ${nums[$i]} -lt $min ] && min=${nums[$i]}

done

echo "All numbers are ${nums[*]}"

echo max is $max

echo min is $min

[root@centos8 ~]#chmod +x max_min.sh

[root@centos8 ~]#./max_min.sh

3、输入若干个数值存入数组中,采用冒泡算法进行升序或降序排序

[root@centos8 ~]#vim arry.sh

[root@centos8 ~]#cat arry.sh

#!/bin/bash

read -p"请输入数值个数:" COUNT

declare -a nums

for ((i=0;i<$COUNT;i++));do    

     num[$i]=$RANDOM

done

echo "原始数组:${num[@]}"

declare -i n=$COUNT

for (( i=0; i<n-1;i++));do

      for(( j=0;j<n-1-i;j++));do

           let x=$j+1

          if (( ${num[$j]} < ${num[$x]}));then

#从大到小排列

             tmp=${num[$x]}

             num[$x]=${num[$j]}

             num[$j]=$tmp

          fi

    done

done

echo "排列之后:${num[*]}"

echo "the max integer is $num,the min integer is ${num[$((n-1))]}"

[root@centos8 ~]#chmod +x arry.sh

[root@centos8 ~]#./arry.sh

4、总结查看系统负载的几种命令,总结top命令的指标大概什么含义(不要求全部写出来)

uptime:查看系统平均负载

mpstat:百分比显示CPU利用率的各项指标

top和htop:查看进程的实时状态

free:查看内存空间的使用状态

pmap:查看进程对应的内存映射,可以看到进程依赖的子模块占用的内存数量,可以以此判断OOM

vmstat:查看虚拟内存的信息,可以以用户定义的间隔不断刷新状态,能够看到内存与SWAP、磁盘之间的IO情况;

iostat:能够看到更丰富的IO性能状态,可以自定义刷新间隔判断哪块硬盘的IO比较繁忙;-x参数可以看到磁盘基于扇区的IO,队列长度,处理时间等

iotop:以top方式监控磁盘的I/O,实时监控,而且可以只显示正在执行读写的进程,提供很多非交互式参数;

iftop:显示网络带宽的使用情况,查看访问当前主机的流量的实时信息,实时连接等;

nload:只能以接口为单位查看实时吞吐量,看不到连接信息,只有速率信息;

top命令的指标以及含义:

top -23:15:13  up  2 days, 23:13,  3users,  load average: 0.00,0.01,0.00

当前时间 -- 开机时间 -- 当前登录用户数 -- 平均负载 -- 5分钟、10分钟、15分钟

Tasks:  246 total,  1 running,  245 sleeping,  0 stopped,  0 zombie

总任务数 -- 当前正在运行的任务数 -- 处于休眠的任务数 -- 停止状态的任务数 -- 僵尸态的进程数

%Cpu(s):  0.3 us, 0.3 sy,  0.0 ni,  98.2 id,  0.7 wa,  0.2 hi,  0.3 si,  0.0 st

上一次刷新后间隔内CPU状态的百分比情况;是多核CPU的平均值,可以按1切换显示为独立的CPU统计;

us:用户空间内没有nice调整过优先级的进程运行的时间

sy:内核空间进程运行的时间

ni:调整过nice的用户空间进程运行时间

id:空闲时间

wa:等待IO的时间

hi,硬中断时间

si,软中断(模式切换)

st,虚拟机偷走的时间(虚拟机内进程执行的时间)

MiB Mem :1950.3 total, 88.5 free, 1191.2 used, 670.6 buff/cache

MiB Swap:  2048.0 total, 1887.0 free, 161.0 used. 594.4 avail Mem

内存和交换分区的使用情况:

total:总大小

free:空闲大小,加上buff/cache后是真正可以使用的总空闲空间

used:已使用的大小

buff/cache:数据缓存占用的大小

PID  USER   PR NI     VIRT  RES  SHR  S   %CPU   %MEM   TIME+   COMMAND

PID:进程ID%MEM:内存使用百分比

VIRT:使用的虚拟内存大小,包括已经被映射但还未被使用的页表

RES:使用的物理内存大小

CODE:可用于执行代码的物理内存数量

DATA:进程保留的私有内存空间,可能还未被映射到物理内存,但已经被算到虚拟内存空间中

SHR:共享内存空间,可以被其他进程共享

PR:top命令显示的优先级0-39之间,越小

NI:nice优先级%CPU:CPU利用率

TIME+:进程启动之后占用的CPU时间,是时间片的累计

COMMAND:进程关联程序的名称,或启动进程的命令

5、编写脚本,使用for和while分别实现192.168.0.0/24网段内,地址是否能够ping通,若ping通则输出"success!",若ping不通则输出"fail!"

一、for循环:

注:& 符号可以并发执行,wait 等待0s退出进程

[root@centos8 ~]#vim for.sh

[root@centos8 ~]#cat  for.sh

#!/bin/bash

for ip in {1..254};do  

{

     ping 192.168.0.$ip -c 1 -w 1 &> /dev/null

     if [ $? == 0 ];then

             echo " ping 192.168.0.$ip...... success!"

      else       

             echo "ping 192.168.0.$ip...... fail!"   

       fi

} &

done

wait

[root@centos8 ~]#chmod +x for.sh

[root@centos8 ~]#./for.sh

二、while循环:

[root@centos8 ~]#vim while.sh

[root@centos8 ~]#cat while.sh

#!/bin/bash

while [ ip -le 254 ];do  

{

     ping 192.168.0.$ip -c 1 -w 1 &> /dev/null

     if [ $? == 0 ];then

             echo "192.168.0.$ip... success!"

      else       

              echo "192.168.0.$ip... fail!"   

       fi

} &

done

wait

[root@centos8 ~]#chmod +x while.sh

[root@centos8 ~]#./while.sh

6、每周的工作日1:30,将/etc备份至/backup目录中,保存的文件名称格式 为“etcbak-yyyy-mm-dd-HH.tar.xz”,其中日期是前一天的时间

[root@centos8 ~]#vim etcbak.sh

[root@centos8 ~]#cat etcbak.sh

#!/bin/bash

#如果/backup路径不存在,则创建backup文件夹

[ -d /backup ] || mkdir /backup

30 1 * * 1-5 /usr/bin/tar -zcf etcbak-date -d "-1 day" +%Y-%m-%d-%H.tar.xz /etc &> /dev/null

[root@centos8 ~]#chmod +x etcbak.sh

root@centos8 ~]#./etcbak.sh

[root@centos7 expects]# ll /backup/

total 0

©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 215,794评论 6 498
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 92,050评论 3 391
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 161,587评论 0 351
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 57,861评论 1 290
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 66,901评论 6 388
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 50,898评论 1 295
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 39,832评论 3 416
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 38,617评论 0 271
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 45,077评论 1 308
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 37,349评论 2 331
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 39,483评论 1 345
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 35,199评论 5 341
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 40,824评论 3 325
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 31,442评论 0 21
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 32,632评论 1 268
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 47,474评论 2 368
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 44,393评论 2 352

推荐阅读更多精彩内容