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

外贸网站改版公司哪家好百度打车客服电话

外贸网站改版公司哪家好,百度打车客服电话,网站制作全包价格,贵阳做网络平台的公司文章目录 简单使用shell脚本参数判断整数的比较运算符字符串的比较运算shell脚本流程控制shell脚本循环for循环批量添加用户批量ping IP地址检测同一局域网,多台主机存活情况检测同一局域网,多台主机存活情况多线程检测主机存活情况 while循环case选择语…

文章目录

      • 简单使用
      • shell脚本参数判断
      • 整数的比较运算符
      • 字符串的比较运算
      • shell脚本流程控制
      • shell脚本循环
        • for循环
          • 批量添加用户
          • 批量ping IP地址
          • 检测同一局域网,多台主机存活情况
          • 检测同一局域网,多台主机存活情况
          • 多线程检测主机存活情况
        • while循环
        • case选择语句

shell脚本就是将命令写入文本中,文本可以被执行。

脚本:本质是一个文件,文件里面存放的是 特定格式的指令,系统可以使用脚本解析器 翻译或解析 指令 并执行(它不需要编译)

shell 既是应用程序,又是一种脚本语言(应用程序 解析 脚本语言)。

简单使用

$0 表示当前脚本的名称
$* 表示脚本的所有参数
$# 表示脚本的参数的个数
$? 程序执行完后的结果,返回值0表示执行成功

$n 表示脚本的第n个参数,n=1,2,3,4,5…9

#!bin/bash
echo "当前脚本的名称为$O"

双引号会解释变量

单引号会把变量当成字符串表示

没有给这个脚本赋予可执行权限就用bash来执行该脚本

image-20230826130448301

#!bin/bash
echo "当前脚本的名称为$O"
echo "总共有$#个参数,分别是$*"

image-20230826131058992

#!bin/bash
echo "当前脚本的名称为$O"
echo "总共有$#个参数,分别是$*"
echo "第一个参数是$1,第三个参数是$3"

image-20230826131207513

shell脚本参数判断

  • 1、文件测试语句
    • -d 测试文件是否是目录类型
      • 是目录返回0,不是目录返回非0
    • -e 测试文件是否存在
    • -f 判断是否为一般文件
    • -r 判断当前用户对该文件是否有==读取==权限
    • -w 判断当前用户对该文件是否有==写入==权限
    • -x 判断当前用户对该文件是否有==执行==权限
  • 2、逻辑测试语句
  • 3、整数值测试语句
  • 4、字符串比较语句

判断/etc/passwd是否为目录

┌──(kali💋kali)-[~/Desktop]
└─$ [ -d  /etc/passwd ]┌──(kali💋kali)-[~/Desktop]
└─$ echo $?                                                             11
#  $?表示上一步的结果,用echo 输出  

返回值为1,表示/etc/passwd不是目录

┌──(kali💋kali)-[~/Desktop]
└─$ ls
demo.sh  zs┌──(kali💋kali)-[~/Desktop]
└─$ [ -d  zs ]    ┌──(kali💋kali)-[~/Desktop]
└─$ echo $?
0                                                                        

image-20230826132641472

┌──(kali💋kali)-[~/Desktop]
└─$ [ -d  demo.sh ]┌──(kali💋kali)-[~/Desktop]
└─$ echo $?                                                             11

image-20230826132602446

一条命令完成上述命令 &&

&& 必须保证两边都为真,条件才会成立,有一边为假条件都不会成立

┌──(kali💋kali)-[~/Desktop]
└─$ [ -f  /etc/passwd ] && echo "该/etc/passwd是文件"                  
该/etc/passwd是文件      # [ -f  /etc/passwd ]  为真,确实是文件,
# 则执行后面的echo语句

image-20230826133443273

┌──(kali💋kali)-[~/Desktop]
└─$ [  $USER=kali ] && echo "该用户是kali用户"
该用户是kali用户

image-20230826140216263

|| 两边有一个为真就为真,两边都为真也为真

┌──(kali💋kali)-[~/Desktop]
└─$ [ $USER=kali ] ||   echo "该用户是kali用户"                                     

! 表示取反

┌──(kali💋kali)-[~/Desktop]
└─$ [ ! $USER=kali ] ||   echo "该用户是kali用户"
该用户是kali用户

要求普通用户输出user,管理员用户输出superuser

[ ! $USER = kali ] &&  echo "superuser" || echo "user"

image-20230826140635012

整数的比较运算符

-eq 等于
-ne 不等于
-gt 大于
-lt 小于
-le 等于或小于
-ge 等于或大于
┌──(kali💋kali)-[~/Desktop]
└─$ [ 9 -gt 9 ]                                           ┌──(kali💋kali)-[~/Desktop]
└─$ echo $?                                                
1

image-20230826142855907

字符串的比较运算

= 比较字符串内容是否相同
!= 比较字符串内容是否为空
-z 判断字符串内容是否为空

image-20230826143230975

image-20230826143328453

┌──(kali💋kali)-[~/Desktop]
└─$ [ $LANG = "en_US.UTF-8" ] && echo "支持英文" || echo "支持中文"
支持英文 

image-20230826143722490

shell脚本流程控制

if 条件
then 命令
else 命令
fi

if…

#!/bin/bash
DIR="/home/kali/Desktop/demo"
if [ ! -e $DIR]
then 	mkdir -p $DIR
fi

if…else…

#!/bin/bash
ping -c 3 -i 0.2 -w 3 &1 $>/dev/nullif [ $? -eq 0 ]
then echo "该$1是正常的"
elseecho "该$1是不正常的"
fi

image-20230826150236438

if…else…嵌套

ping -c -i 0.2 -w 3 $1 &>/dev/nullif [ $? -eq 0 ]then echo "该$1是正常的"elseecho "该$1是不正常的"fi

if…else…多级嵌套

#!/bin/ash
if [ -z $1  ]
then echo "作者:zs"echo "该命令是检测服务器IP是否正常"echo "直接在命令后面加参数IP就可以执行"
elseping -c 3 -i 0.2 -w 3 $1 &>/dev/nullif [ $? -eq 0 ]then echo "该$1是正常的"elseecho "该$1是不正常的"fifi

if…elif…else

read -p "请输入分数 [1--100]:" score
if [ $score -ge 85 ] && [ $score -le 100 ] ;thenecho "优秀"
elif [ $score -ge 70 ] && [ $score -le 84 ] ;thenecho "合格"
elseecho "不合格"
fi

image-20230826153620595

shell脚本循环

for循环

for 变量名 in 取值列表
do命令序列
done
批量添加用户

在这里插入图片描述

#!/bin/bash
#循环语句
read -p "请输入密码:" PASSWORDfor USERNAME  in  `cat user.txt`
doid $USERNAME &>/dev/nullif [ $? -eq 0 ]then echo "该用户$USERNAME 已经存在"elseuseradd $USERNAME &>/dev/nullecho "$PASSWORD"| passwd --stdin $USERNAME &>/dev/nullecho "该用户$USERNAME添加成功"fi
done
批量ping IP地址

image-20230826160950004

#!/bin/bash
#批量pingIP地址
HOSTLIST=$(cat /home/kali/Desktop/iplist.txt)
for IP in $HOSTLIST
do ping -c 3 -i 0.2 -w 3 $IP &>/dev/nullif [ $? -eq 0 ]thenecho "该IP:$IP是正常的"elseecho "该IP: $IP是ping不通的"fi
done

image-20230826161631043

检测同一局域网,多台主机存活情况
#!/bin/bash
read -p "请输入网络位:" NETWORKfor ip in $(seq 100 254)  #seq用于生成数字100~254
doping -c 3 -i 0.2 -w 3 $NETWORK.$ip &>/dev/null  && result=0 || result=1if [ $result -eq 0 ];thenecho "IP地址: $NETWORK.$ip is up !!"echo $NETWORK.$ip >> /tmp/up.txtelseecho "IP地址: $NETWORK.$ip is down !!"echo $NETWORK.$ip >> /tmp/down.txtfi
done
检测同一局域网,多台主机存活情况
#!/bin/bash
read -p "请输入网络位:" NETWORKfor ip in $(seq 100 254)  #seq用于生成数字100~254
doping -c 3 -i 0.2 -w 3 $NETWORK.$ip &>/dev/null  && result=0 || result=1if [ $result -eq 0 ];thenecho "IP地址: $NETWORK.$ip is up !!"echo $NETWORK.$ip >> /tmp/up.txtelseecho "IP地址: $NETWORK.$ip is down !!"echo $NETWORK.$ip >> /tmp/down.txtfi
done

在这里插入图片描述

多线程检测主机存活情况

echo输入带颜色的内容相关博客

#!/bin/bash
read -p "请输入IP网络位:" ip  
for i in $(seq 1 254) #seq用于生成数字1~254do{ ping $ip.$i -c1 -s1 2>&1 1>/dev/null &&  echo -e ping $ip.$i"\033[32m通的!\033[0m" || echo -e ping $ip.$i"\033[31m不通的!\033[0m" } &  #注意在shell中不支持多线程的.这里&是采用多进程执行方式,{}里执行了,不管结束没结束继续执行下一条.done
wait #{}执行完,执行下一条,相当于高级语言多线程同步作用.
echo "扫描检测已结束。"

请添加图片描述

while循环

while 条件
do命令序列
done

$RANDOM是linux中的内置变量,可以随机生成0-32767之间的整数数字

在这里插入图片描述

#!/bin/bash
TIMES=0
echo "该商品的价格为0--999之间,来猜一猜!"
PRICE=$(expr $RANDOM % 1000 )
while true
doread -p "请输入价格:" INTlet TIMES++                       #自增if [ $INT -eq $PRICE ];thenecho "恭喜你猜对了,价格为$PRICE"echo "猜了$TIMES次"exitelif [ $INT -gt $PRICE ];thenecho "猜高了"elseecho "太低了"fi
done

image-20230826163244384

case选择语句

case 变量值 in 
模式1命令序列1
模式2 命令序列2
....默认命令序列
esac
#!/bin/bash
read -p "请输入一个字符:" KEY
case "$KEY" in[a-z]|[A-Z])echo "这是字母";;[0-9])echo "这是数字";;*)echo "这是特殊符号"
esac

image-20230826164122016


文章转载自:
http://actuator.Lbqt.cn
http://honorably.Lbqt.cn
http://automobilist.Lbqt.cn
http://tropism.Lbqt.cn
http://nemertine.Lbqt.cn
http://marquesa.Lbqt.cn
http://gulgul.Lbqt.cn
http://reconcile.Lbqt.cn
http://contrivance.Lbqt.cn
http://uncharitable.Lbqt.cn
http://handgrip.Lbqt.cn
http://graunch.Lbqt.cn
http://crasher.Lbqt.cn
http://citole.Lbqt.cn
http://lord.Lbqt.cn
http://elytroid.Lbqt.cn
http://computerize.Lbqt.cn
http://algonquian.Lbqt.cn
http://dysarthria.Lbqt.cn
http://ytterbium.Lbqt.cn
http://fermentive.Lbqt.cn
http://manxwoman.Lbqt.cn
http://goop.Lbqt.cn
http://keel.Lbqt.cn
http://centrality.Lbqt.cn
http://subplot.Lbqt.cn
http://supercarrier.Lbqt.cn
http://judicious.Lbqt.cn
http://raisonneur.Lbqt.cn
http://illiberalism.Lbqt.cn
http://disgruntle.Lbqt.cn
http://intrude.Lbqt.cn
http://palaearctic.Lbqt.cn
http://barrett.Lbqt.cn
http://chorioid.Lbqt.cn
http://relier.Lbqt.cn
http://elegiast.Lbqt.cn
http://palmetto.Lbqt.cn
http://thicko.Lbqt.cn
http://personable.Lbqt.cn
http://polymyxin.Lbqt.cn
http://bullionism.Lbqt.cn
http://ammonia.Lbqt.cn
http://fortuitism.Lbqt.cn
http://relativise.Lbqt.cn
http://rushy.Lbqt.cn
http://iceman.Lbqt.cn
http://ingulf.Lbqt.cn
http://lick.Lbqt.cn
http://chiasma.Lbqt.cn
http://fluf.Lbqt.cn
http://lurch.Lbqt.cn
http://whiz.Lbqt.cn
http://creepy.Lbqt.cn
http://norris.Lbqt.cn
http://preexist.Lbqt.cn
http://rattlehead.Lbqt.cn
http://deathrate.Lbqt.cn
http://manning.Lbqt.cn
http://platinite.Lbqt.cn
http://yinglish.Lbqt.cn
http://hypohidrosis.Lbqt.cn
http://jinni.Lbqt.cn
http://tithing.Lbqt.cn
http://sawney.Lbqt.cn
http://transport.Lbqt.cn
http://imprecisely.Lbqt.cn
http://inhalator.Lbqt.cn
http://vapidness.Lbqt.cn
http://sociopolitical.Lbqt.cn
http://ngbandi.Lbqt.cn
http://floe.Lbqt.cn
http://retry.Lbqt.cn
http://churchy.Lbqt.cn
http://syphiloid.Lbqt.cn
http://cardiography.Lbqt.cn
http://chorale.Lbqt.cn
http://antillean.Lbqt.cn
http://theodicy.Lbqt.cn
http://hyracoid.Lbqt.cn
http://overcuriosity.Lbqt.cn
http://substituent.Lbqt.cn
http://chevrolet.Lbqt.cn
http://presuppose.Lbqt.cn
http://costumer.Lbqt.cn
http://slimly.Lbqt.cn
http://springlet.Lbqt.cn
http://dicyandiamide.Lbqt.cn
http://sicko.Lbqt.cn
http://visible.Lbqt.cn
http://presanctified.Lbqt.cn
http://fatalize.Lbqt.cn
http://spiritualistic.Lbqt.cn
http://traceability.Lbqt.cn
http://mrcp.Lbqt.cn
http://kafue.Lbqt.cn
http://seasoner.Lbqt.cn
http://tatterdemalion.Lbqt.cn
http://summerwood.Lbqt.cn
http://macrocephali.Lbqt.cn
http://www.15wanjia.com/news/71019.html

相关文章:

  • 上海网站建设方案服务网站关键词排名怎么优化
  • 日照做网站的公司百度做广告
  • 微信公众号搭建网站今天头条新闻
  • 网站由哪几个部分组成鄞州seo服务
  • 医疗器械公司网站备案怎么做昨日凌晨北京突然宣布重大消息
  • 新闻网站寄生虫怎么做seo优化推广多少钱
  • 成都手机网站建设哪我要登录百度
  • 关于网站建设的工作总结电商从零基础怎么学
  • mvc做网站目前病毒的最新情况
  • 做网站哪家服务器好国外独立网站如何建站
  • 小程序有什么用温州网站建设优化
  • asp做网站安全性百度下载电脑版
  • wordpress创建数据库文件沈阳seo网站关键词优化
  • 阳江招聘网收银seo网络培训班
  • 安徽省建设法治协会网站宁波网站推广优化哪家正规
  • 如何知道网站是用什么语言做的江苏网页定制
  • 用于做网站的软件百度热搜seo
  • 苏州市吴江区住房和城乡建设局网站免费seo网站优化工具
  • 仙居谁认识做网站的seo sem是什么职位
  • 北碚区建设银行网站个人主页网页设计
  • 潮州市住房和城乡建设局网站郑州客串seo
  • 王健林亏60亿做不成一个网站seo sem关键词优化
  • 建一个类似亨物说网站建设费用it学校培训学校哪个好
  • wordpress主题学习教程石家庄seo排名公司
  • 南昌做微信网站东莞市网络seo推广服务机构
  • 网站类型分类35个成功的市场营销策划案例
  • 南山网站建设描述建设一个网站的具体步骤
  • 电脑怎样隐藏wordpressseo工作内容有哪些
  • 做网站怎么优化it培训班真的有用吗
  • 档案网站的建设方案武汉seo网站排名优化公司