09 2023 档案
摘要:列出网络上所有活动的主机 #!/bin/bash# {start..end}会由shell对其进行扩展生成一组ip地址for ip in 192.168.0.{1..255} ;do ping $ip -c 2 &> /dev/null ; # $?获取退出状态,顺利退出则为0 if [ $? -e
阅读全文
摘要:监控CPU利用率 使用vmstat来分析CPU使用信息 #!/bin/bashDATE=$(date +%F" "%H:%M)IP=$(ifconfig eth0 |awk -F '[ :]+' '/inet addr/{print $4}') # 只支持CentOS6MAIL="example@m
阅读全文
摘要:监控硬盘利用率 使用fdisk来分析硬盘使用信息 #!/bin/bashDATE=$(date +%F" "%H:%M)IP=$(ifconfig eth0 |awk -F '[ :]+' '/inet addr/{print $4}') MAIL="example@mail.com"TOTAL=$
阅读全文
摘要:监控内存利用率 使用free来分析CPU使用信息 #!/bin/bashDATE=$(date +%F" "%H:%M)IP=$(ifconfig eth0 |awk -F '[ :]+' '/inet addr/{print $4}') MAIL="example@mail.com"TOTAL=$
阅读全文
摘要:sort命令 shell中还可以使用sort进行排序 # 以行作为单位sort [option] [files]-b:忽略每行前面的空格-c:检查文件是否已经按照顺序排序-d:排序时,处理英文字母、数字和空格字符,忽略其他字符-g: 一般数值,以浮点数字类型比较字段-f:排序时,将小写字母视为大写字
阅读全文
摘要:sed命令 sed主要用于将数据进行选取、替换、删除、新增的命令,以批处理的方式而不是交互的方式来编辑文件,sed读取文件是一次读取一行 语法格式为sed [选项] '[动作]' 文件名 #删除第二行sed '2d' stu.txt# 删除第一个冒号之后的所有东西sed 's/:.*//' user
阅读全文
摘要:awk命令 awk是shell进阶的重要命令,可以用来编排字段 awk把输入流看做一串记录的集合,每条记录都可以进一步细分为字段,一个awk程序是一对以模式和大括号框起来的操作组合而成的,awk每次从文件中读取一条记录 awk [选项] '条件{动作} 条件{动作}' 文件 -v 设置变量值 pat
阅读全文
摘要:字符串操作 字符串切片 字符串的第一个字符,编号为0,右邻的字符编号,一次增加1 取字符串切片的语法有两种 ${变量:位置起点} 由指定的位置开始,截取子字符串到字符串结束 str="123456"substr=${str:4}# 打印结果为56echo $substr ${变量:位置起点:长度}
阅读全文
摘要:重定向 文件的标准操作分为 标准输入(stdin)、标准输出(stdout)、标准报错输出(stderr) 输入重定向 输入重定向符是< 标准输入 文件描述符是0 # 命令的输入来自于文件而不是键盘command < input-file 输出重定向 输出重定向符是> bash的输出分为标准输出和错
阅读全文
摘要:重导和管道 重导和管道不能单独使用,需要配合其他命令一起使用 重导 重导可将命令结果输出到文件中,有两种形式">"和">>" ">"是将结果输出到文件中,将该文件中的原内容覆盖 ls -a > dir.txt ">>"是将结果追加到文件中 ls -a >> dir.txt 两个特殊文件 /dev/n
阅读全文
摘要:循环语句 Bash中有三种可以用来重复执行一系列命令的语句:for循环语句、while循环语句和until循环语句 for循环 #for循环的语法一 for 变量 in 列表 do 语句 done#for循环的语法二for (( 初始值;循环控制条件;变量变化 )) do 语句 done 示例: #
阅读全文
摘要:位置参数变量 在写shell脚本的时候,难免会进行命令行传参,下面来介绍一下位置参数变量 为 数 字 , 0代表本身,即当前程序的名称 9代表第一到第九个参数,十以上的参数需要使用大括号,如${10} $* 表示命令行中的所有参数,把所有参数看成一个整体 $@ 也表示命令行中的所有参数,但是把每个参
阅读全文
摘要:替换运算符 有时候${variable}使用变量时,其变量可能没有设置导致存在一些问题,可以使用替换运算符来解决 ${varname:-word} 如果varname存在且非null时,则返回其值;否则返回word ${varname:=word} 如果varname存在且非null时,则返回其值;
阅读全文
摘要:判断语句 使用test来进行判断 # test [选项] 文件test -d /Users/zhanghe/desktop/user/shell 示例:#如果该文件是目录则输出yes,否则输出notest -d /Users/zhanghe/desktop/user/shell && echo ye
阅读全文
摘要:流程控制 if条件判断 可以使用if来实现多路跳转,条件通常使用test命令 #if语句的语法if condition1then command1elif condition2 then command2else commandNfi 如果then需要和if放在同一行的话,使用;分隔 fi用来结束i
阅读全文
摘要:读取变量 shell变量包括两种:环境变量和用户定义变量。环境变量用于定制shell的运行环境,保证shell的正确运行,可以参考环境变量那一节来进行配置;用户定义的变量在shell脚本中用来作为临时的存储空间 #设置变量# 变量名=变量值 之间没有空格myvar=this_is_variable#
阅读全文
摘要:查看可支持的shell linux中支持多种shell类型,所以在shell文件的第一行需要指定所使用的shell #!/bin/bash 指定该脚本使用的是/bin/bash,这样的机制使得我们可以轻松地引用任何的解释器 查看该linux系统支持的shell cat /etc/shells/bin
阅读全文
摘要:变量和引号 在shell中设定变量使用单引号和双引号有什么区别呢? 双引号 双引号的功能比较强大 替换变量 myname="Bash"HelloWorld="你好,我是 $myname"echo $HelloWorld 输出结果为 你好,我是 Bash 如果使用单引号则不行 替换命令执行结果 替换算
阅读全文
摘要:ssh断开连接 有时候使用ssh连接服务器,只是一会儿没用就自动断开连接了,又得重新连,很烦人,那么有没有办法可以让连接保持很久不断开呢?那肯定是有的 在/etc/ssh目录下的sshd_config就是用来配置ssh的,其对于客户端连接的配置默认是这样的 # ClientAliveInterval
阅读全文
摘要:系统资源命令 当前系统负载 w查看的是整体的负载,可以来观察当前系统有没有压力 w 系统当前负载 第一行显示的内容依次为:时间、系统运行时间、登录用户数、平均负载(1分钟、5分钟、15分钟) 第二行后展示的信息为:当前登录的都有哪些用户、在哪里登录的等信息 平均负载不要高于设备核心数 系统资源查看
阅读全文
摘要:文件系统命令 磁盘空间使用 linux 可以对组进行配额限制 1、vi /etc/fstab 文件 将要设置配额的分区设置开机自动挂载在添加行在 defaults 后面加上,usrquota(grpquota)表示要建立用户或组的磁盘配额 2、重新挂载文件系统 之前重启看效果,可以使用 umount
阅读全文
摘要:网络命令 配置ip 配置ip有两种方式 #方式一 #setup可以使用配置工具进行配置 setup #方式二 linux服务器默认网卡配置文件的目录/etc/sysconfig/network-scripts,进行配置 网卡的配置文件类型 - ifcfg-ethX 有线网卡的配置文件,eth0表示第
阅读全文
摘要:进程管理命令 查看进程命令 ps命令 显示系统上运行的进程列表 # 查看系统中所有正在运行的系统ps aux# 获取占用内存资源最多的10个进程,可以使用如下命令组合:ps aux|head -1;ps aux|grep -v PID|sort -rn -k +4|head# 获取占用CPU资源最多
阅读全文
摘要:后台运行命令 很多时候需要将命令放在后台执行,那么如何让命令在后台运行呢,只需要在命令后加上&即可 如: java -jar test.jar & 查看后台进程 #-l 表示显示工作的PIDjobs [-l] 但是后台运行的命令在关闭终端之后就会终止,如何解决这个问题呢? 使用定时任务,让系统执行该
阅读全文
摘要:查看端口占用 使用lsof 可以使用lsof -i:端口号 来查看端口占用情况 lsof -i:8010COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAMEnginx 35653 zhanghe 10u IPv4 0xcac2e413ddf9c5b9
阅读全文
摘要:vim编辑器 vim有三种模式,命令模式,插入模式,末行模式,在一开始的时候默认进入的是命令模式 命令模式 命令模式:默认的模式,该模式下有很多的快捷键 文件内移动 n+Shift+g(或nG)快速定位到指定的行,先按你想要的跳转的行,然后按G,如:7G,跳转到第7行 Shift+g(或者G)跳转到
阅读全文
摘要:URL访问工具 有时候想在命令行下通过http访问接口/网页,可以使用curl来进行操作 发起请求 curl www.baidu.com 会返回网页内容 参数选项 -i参数 使用-i参数,会返回响应header curl -i www.baidu.com -I参数 使用-I参数,只会返回响应head
阅读全文