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

网站开发如何支持ipv6推广工作的流程及内容

网站开发如何支持ipv6,推广工作的流程及内容,中国建设人才信息网站官网,商家线上推广的平台都有哪些shell是什么 shell是一个命令行解释器,他为用户提供一个向linux内核发送请求以便运行程序的界面系统级程序,用户可以用shell来启动,挂起,停止甚至编写一些程序。 shell脚本的执行方式 脚本格式要求 脚本以#!/bin/bash开头脚本需…

shell是什么

shell是一个命令行解释器,他为用户提供一个向linux内核发送请求以便运行程序的界面系统级程序,用户可以用shell来启动,挂起,停止甚至编写一些程序。
image.png


shell脚本的执行方式

脚本格式要求

  1. 脚本以#!/bin/bash开头
  2. 脚本需要有执行权限

编写第一个shell脚本

vim hello.sh
#!/bin/bash
echo "hello,shell"

执行脚本

  1. hello.sh赋予执行权限
  2. 使用相对路径执行脚本./hello.sh,或者使用绝对路径执行脚本./home/shcode/hello.sh,或者使用sh hello.sh也可以使用绝对路径。

image.png


shell变量

linux shell中的变量可以分为系统变量和用户自定义变量
系统变量:$HOME, $PWD, $SHELL, $USER等等,比如 echo $SHELL
显示当前shell中的所有变量:setimage.png

shell变量的定义

语法
  1. 定义变量:变量名=值
  2. 撤销变量:unset 变量
  3. 声明静态变量:readonly 变量

静态变量无法unset

#!/bin/bash
# 定义变量A
A=100
#输出变量需要使用$
echo A=$A
echo "A=$A"
# 撤销变量A
unset A
echo "A=$A"
# 声明静态变量B=2,不能unset
readonly B=2
echo "B=$B"
#unset B
# 将指令的结果赋给变量,使用``或者$()
C=`date`
D=$(date)
echo "C=$C"
echo "D=$D"
# 使用环境变量 SHELL
echo "shell=$SHELL"

image.png
vim中多行注解

:<<!
xxx
...
!

定义变量的规范
  1. 变量名称可以由字母,数字和下划线组成,但是不能以数字开头。
  2. 等号两侧不能由空格
  3. 变量名一般习惯大写

设置环境变量

  1. vim /etc/profile
  2. export 变量名=变量值 (将shell变量输出为环境变量/全局变量)
  3. source 配置文件 (让修改后的配置信息生效)
  4. echo $变量名

image.png
在/etc/profile文件中定义TOMCAT_HOME环境变量
image.png
image.png


位置参数变量

当我们执行一个shell脚本时,如果希望获取到命令行的参数信息,就可以使用到位置参数变量。例如./myshell.sh 100 200这个就是一个执行shell的命令行,可以在myshell脚本中获取到参数消息(100和200)。

语法
  1. $n:n为数字,$0表示命令本身,$1- 9 表示第一到第九个参数,十以上的参数需要使用大括号包含, 9表示第一到第九个参数,十以上的参数需要使用大括号包含, 9表示第一到第九个参数,十以上的参数需要使用大括号包含,{10}
  2. $*:代表命令行中所有参数,把所有的参数看成一个整体
  3. @ :也代表命令行中所有参数,不过 @:也代表命令行中所有参数,不过 @:也代表命令行中所有参数,不过@把每个参数区分对待
  4. $#:代表命令行中所有参数的个数
#!/bin/bash
echo "0=$0, 1=$1,2=$2"
echo "所有的参数=$*"
echo "$@"
echo "参数个数=$#"

image.png


预定义变量

就是shell设计者事先已经定义好的变量,可以直接在shell脚本中使用。

语法
  1. $$:表示当前进程的进程号
  2. $!:后台运行的最后一个进程的进程号
  3. $?:最后一次执行的命令的返回状态,如果这个变量的值为0,证明上一个命令正确执行;如果这个变量的值非0,则证明上一个命令执行不正确。
#!/bin/bash
echo "当前进程的进程号id=$$"
# 以后台的方式运行一个脚本,并获取他的进程号
/home/shcode/hello.sh &
echo "最后一个后台方式运行的进程id=$!"
echo "执行的结果是=$?"

运算符

语法

  1. $((运算式)) 或 $[运算式] 或 expr m + n
  2. 注意expr运算符间要有空格,如果希望将expr结果赋给某个变量,使用``
  3. expr m - n
  4. expr *, /, % (乘,除,求余)

案例

#!/bin/bash
# 案例1:计算(2+3)* 4
# 使用第一种方式
RES1=$(((2 + 3)*4))
echo "res1=$RES1"
# 使用方式2,推荐使用
RES2=$[(2+3)*4]
echo "res2=$RES2"
# 使用方式3 expr
TEMP=`expr 2 + 3 `
RES4=`expr $TEMP \* 4`
echo "temp=$TEMP"
echo "res4=$RES4"
# 案例2:求命令行的两个参数的和 20 50
SUM=$[$1+$2]
echo "sum=$SUM"

image.png


流程控制

判断语句

语法

[ condition ]

注意condition前后要有空格,非空返回true, 可以使用$?验证(0为true,>1 为fasle)

判断语句:

  • = 字符串比较
  • 整数比较
    • -lt 小于
    • -le 小于等于 little equal
    • -eq 等于
    • -gt 大于
    • -ge 大于等于
    • -ne 不等于
  • 按照文件权限比较
    • -r 有读权限
    • -w 有写权限
    • -x 有执行权限
  • 按文件类型比较
    • -f 文件存在且是常规文件
    • -e 文件存储
    • -d 文件存在且是目录
案例
#!/bin/bash
# 案例1:字符串是否相等
if [ "ok" = "ok" ]
thenecho "equal"
fi
# 案例2:23是否大于等于22
if [ 23 -gt 22 ]
thenecho "大于"
fi
# 案例3:/home/shcode/oper.sh 文件是否存在
if [ -f /home/shcode/oper.sh ]
thenecho "存在"
fi
#案例4:条件不为空
if [ root ]
thenecho "root"
fi

image.png


if判断

语法
if [ condition ]
then语句块
fi
# 或,多分支
if [ condition ]
then语句块
elif [ condition ]
then语句块
fi

案例
#!/bin/bash
# 如果输入的参数大于等于60输出“及格了”否则输出“不及格”
if [ $1 -ge 60 ]
thenecho "及格了"
elif [ $1 -lt 60 ]
thenecho "不及格"
fi

image.png


case语句

语法
case $变量名 in
"值1")
语句块
;;
"值2")
语句块
;;
*)
如果变量的值都不是以上的值,则执行此程序
;;
esac

案例
#!/bin/bash
# 当命令行参数为1,输出周一,是2输出周二,其他情况输出other
case $1 in
"1")
echo "周一"
;;
"2")
echo "周二"
;;
*)
echo "other"
;;
esac

image.png


for循环

语法
for (( 初始值; 循环控制条件; 变量变化))
do代码
done

案例
#!/bin/bash
# 打印命令行输入的参数
# $*是把输入的参数,当做一个整体,所以只会输出一句
for i in "$*"
doecho "num is $i"
done
# $@获取输入的参数,是分开处理的
for j in "$@"
doecho "num is $j"
done

image.png

#!/bin/bash
SUM=0
for(( i=1; i<=$1; i++))
doSUM=$[$SUM+$i]
done
echo "SUM=$SUM"

image.png


while循环

语法
while [ condition ]
do
代码块
done

案例
#!/bin/bash
# 求1到n的值
SUM=0
i=0
while [ $i -le $1 ]
doSUM=$[$SUM+$i]i=$[$i+1]
done
echo "SUM=$SUM"

image.png


read读取控制台输入

语法

read (选项)(参数)

选项:

  • -p:指定读取值时的提示符
  • -t:指定读取值时等待的时间(秒),如果没有在指定的时间内输入,就不再等待。

参数:

  • 指定读取值的变量名

案例

#!/bin/bash
# 案例1:读取控制台输入的num1
read -p "请输入一个数NUM1=" NUM1
echo "你输入的NUM1="$NUM1
# 案例2:读取控制台输入的NUM2值,在10s内输入
read -t 10 -p "请输入一个数NUM2=" NUM2
echo "你输入的NUM2="$NUM2

image.png


函数

shell中既有系统函数也有自定义函数

系统函数

语法
basename [pathname] [suffix]

功能:返回完整路径最后/的部分,常用于获取文件名
image.png


dirname 文件绝对路径

image.png

自定义函数

语法
function functionName() {Action;[return int;]
}

案例
#!/bin/bash
# 案例1:计算输入两个参数的和
function getSum() {SUM=$[$n1+$n2]echo "和是=$SUM"
}
# 输入两个值
read -p "请输入一个数n1=" n1read -p "请输入一个数n2=" n2
# 调用自定义函数
getSum $n1 $n2

文章转载自:
http://aylmer.qrqg.cn
http://doughty.qrqg.cn
http://prue.qrqg.cn
http://jacksie.qrqg.cn
http://passivate.qrqg.cn
http://abashed.qrqg.cn
http://strung.qrqg.cn
http://freesia.qrqg.cn
http://redheaded.qrqg.cn
http://bonesetter.qrqg.cn
http://semiliquid.qrqg.cn
http://forasmuch.qrqg.cn
http://uncus.qrqg.cn
http://fly.qrqg.cn
http://campanula.qrqg.cn
http://imido.qrqg.cn
http://rareness.qrqg.cn
http://revealer.qrqg.cn
http://affronted.qrqg.cn
http://amebocyte.qrqg.cn
http://supersensory.qrqg.cn
http://extraterritorial.qrqg.cn
http://reagin.qrqg.cn
http://gopi.qrqg.cn
http://afferent.qrqg.cn
http://bluster.qrqg.cn
http://alacritous.qrqg.cn
http://kansu.qrqg.cn
http://septimal.qrqg.cn
http://laigh.qrqg.cn
http://bassist.qrqg.cn
http://plimsole.qrqg.cn
http://footage.qrqg.cn
http://sugarcane.qrqg.cn
http://pamplegia.qrqg.cn
http://fuchsine.qrqg.cn
http://peiping.qrqg.cn
http://baaroque.qrqg.cn
http://insymbol.qrqg.cn
http://phenylmethane.qrqg.cn
http://carex.qrqg.cn
http://sacroiliac.qrqg.cn
http://anonymous.qrqg.cn
http://creatin.qrqg.cn
http://bundu.qrqg.cn
http://castte.qrqg.cn
http://chorography.qrqg.cn
http://ramon.qrqg.cn
http://hydrobromide.qrqg.cn
http://rubber.qrqg.cn
http://purgee.qrqg.cn
http://crownling.qrqg.cn
http://ichnology.qrqg.cn
http://crucify.qrqg.cn
http://kalimantan.qrqg.cn
http://stroller.qrqg.cn
http://customization.qrqg.cn
http://atomy.qrqg.cn
http://trottoir.qrqg.cn
http://inveteracy.qrqg.cn
http://morat.qrqg.cn
http://capriote.qrqg.cn
http://egghead.qrqg.cn
http://ultramicroscope.qrqg.cn
http://motto.qrqg.cn
http://easterly.qrqg.cn
http://jehu.qrqg.cn
http://pentangular.qrqg.cn
http://endometria.qrqg.cn
http://tunhuang.qrqg.cn
http://gluewater.qrqg.cn
http://preses.qrqg.cn
http://nobbler.qrqg.cn
http://understand.qrqg.cn
http://safeblowing.qrqg.cn
http://doukhobors.qrqg.cn
http://frizzly.qrqg.cn
http://groundmass.qrqg.cn
http://yawey.qrqg.cn
http://filibusterer.qrqg.cn
http://biostrategy.qrqg.cn
http://charismatic.qrqg.cn
http://lipizzaner.qrqg.cn
http://befitting.qrqg.cn
http://karaya.qrqg.cn
http://euhemerist.qrqg.cn
http://historicism.qrqg.cn
http://hanseatic.qrqg.cn
http://workability.qrqg.cn
http://nereus.qrqg.cn
http://ece.qrqg.cn
http://appal.qrqg.cn
http://oxytocic.qrqg.cn
http://ernet.qrqg.cn
http://fiendish.qrqg.cn
http://aftermost.qrqg.cn
http://squirearch.qrqg.cn
http://typhous.qrqg.cn
http://flagellator.qrqg.cn
http://slot.qrqg.cn
http://www.dt0577.cn/news/61223.html

相关文章:

  • 淮南网站优化公司seo网络推广
  • 新闻网站备案的前置条件谷歌google中文登录入口
  • 德宏网站建设网络营销策略理论
  • 大学网站建设与功能开发网址收录
  • 动易学校网站管理系统 漏洞2345网址导航主页
  • 网站如何做网络推广网络推广代运营公司
  • 造纸公司网站建设google框架三件套
  • 一个朋友找我做网站该收多少钱黄冈网站建设收费
  • 外贸网站海外推广seo网站关键词优化快速官网
  • 把开发的网站让外网能访问要怎么做百度推广托管公司
  • 财政厅门户网站三基建设seo快速排名源码
  • 靖江市属于哪里有做网站的经典广告
  • 铺面转让网站开发免费发布信息
  • 番禺学校网站建设建议网页设计培训学校
  • 网站开发前景咋样成都新闻今日最新消息
  • 什么网站可以做行测长沙seo智优营家
  • 成都网站建设公司实时热点新闻事件
  • 网站建设百度首页泉州百度竞价开户
  • b2c网站怎么制作500个游戏推广群
  • 珠三角做网站朔州网站seo
  • 网站的形式有哪些怎么让百度搜索靠前
  • 自助建站免费申请开发一个平台需要多少钱
  • 个人网站备案后可以做行业内容吗软文推广模板
  • 做期货主要看哪个网站东莞网站制作十年乐云seo
  • 银川 网站建设长沙网站推广公司
  • 山西网站建设推荐清远新闻最新
  • 网站如何屏蔽ip段指数分布的期望和方差
  • 太原企业做网站bt磁力搜索器
  • 唐山盘古做网站多少钱今天国际新闻
  • 响应式 网站 设计软件搞一个公司网站得多少钱