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

徐州做网站软件百度seo排名优化是什么

徐州做网站软件,百度seo排名优化是什么,做电脑网站会很难么,wordpress增加h5网页省流:shift关键字 探索思路 最近有一个小小的需求,写一个类似于docker run -a -b -c这样的脚本,这个脚本名为doline,它本身可以执行(doline -a -b -c),同时又带有几个如run、init、start这样的…

省流:shift关键字

探索思路

最近有一个小小的需求,写一个类似于docker run -a -b -c这样的脚本,这个脚本名为doline,它本身可以执行(doline -a -b -c),同时又带有几个如run、init、start这样的参数,感觉有点说不明白,以下是几种场景:

doline -a -b -c      # 直接传参使用
doline -h            # 查看帮助文档
doline init -a -b -c # 初始化一些参数,再次执行时可以不带初始化的参数
doline init -h       # 查看关于'init'的帮助文档
doline run -a -b -c  # ....

有多个类似于init、run这样的二级命令,我之前在【Shell 脚本传递参数的两种方式:位置传参与指令式传参】中详细介绍了Shell的两种传参方式,因此我基于这两种方式开始探索,并有了初步的想法(实操之后发现并不可以)。
首先使用最简单的位置传参,判断$1的值是不是init、run这样的参数,如果不是的话直接getopts如果是的话就在init下面再进行一次getopts,并且在init的结尾进行exit
伪代码大概如下:

## 如果是 doline init -a 123 -b 123 -c 123 就执行下面的代码
if [ $1 = 'init' ] ; thenwhile getopts ":a:b:c:h" optdocase $opt ina)....;;?)echo '未知参数';exit 1;;;esacdoneexit 0;
fi## 如果是 doline -a 123 -b 123 -c 123 就执行下面的代码
while getopts ":a:b:c:h" opt
docase $opt ina)....;;?)echo '未知参数';exit 1;;;esac
done

但是,实操之后失败了,如果是直接doline -a -b -c是可以的,但是doline init的话就全部执行失败,我在代码起始的位置输出所有的参数echo $*,参数是init -a -b -c,这样的话init也占了一个位置,后面的所有参数都对不上位置了,显然是不行的,但是逻辑上是可以的。

成功案例

这时候就要想办法,比如是否有其他的参数获取方式?或者如何在判断是init之后给init这个参数删除掉呢?经过一番查找,找到了一个十分关键的关键词shift切换。

shift 的原理:
如果你输入的参数是init -a -b -c,在读取init之后进行shift,参数列表就变为-a -b -c,这个时候就能对应上了。

这个时候只需要对上面的内容稍加改在,在判断第一个参数是init之后,立刻进行shift就可以了,更改后的脚本如下:

if [ $1 = 'init' ] ; thenshift; # 重读取过的$1之后开始判断命令while getopts ":a:b:c:h" optdocase $opt ina)....;;?)echo '未知参数';exit 1;;;esacdoneexit 0;
fi## 如果是 doline -a 123 -b 123 -c 123 就执行下面的代码
while getopts ":a:b:c:h" opt
docase $opt ina)....;;?)echo '未知参数';exit 1;;;esac
done

以上代码在判断第一个参数是init之后,会立刻进行shift,后面的内容就会一一对应起来了。

简单验证

写个简单的脚本,验证一下:

#!/bin/bashif [ $1 = 'init' ] ; then echo $* ;exit 0;
fiif [ $1 = 'run' ] ; thenshift; ## SHIFT 在这里echo $*;exit 0;
fi

期望输出:

执行./testShift init -a -b -c输出init -a -b -c
执行./testShift run -a -b -c输出-a -b -c

在这里插入图片描述
验证成功!!

参考

Tomcat 启动脚本

http://www.hrbkazy.com/news/14265.html

相关文章:

  • 在酒吧里做那个视频网站竞价恶意点击立案标准
  • 东莞网站建设招聘广告设计公司
  • Webmin和wordpress巢湖seo推广
  • 做网站哪里找下载百度地图2022最新版官方
  • 做网站图片用什么格式最好网站建设7个基本流程
  • 餐饮运营策划公司重庆关键词优化服务
  • 网站做联盟广告能赚钱吗可以搜索国外网站的搜索引擎
  • 网站建设合同内容seo推广方案怎么做
  • 中山一站式营销推广平台跨境电商培训机构哪个靠谱
  • 网络营销网站建设设计方案成免费crm软件有哪些优点
  • 广州做网站企业怎样查询百度收录和排名情况
  • 什么网站可以做设计赚钱廊坊seo
  • 邢台网站制作哪里做舆情信息报送
  • 有哪些做淘宝素材的网站有哪些长春关键词优化公司
  • 可以先做网站再开公司吗营业推广方案
  • 滁州做网站hi444长春seo排名
  • 程序员做网站外快幽默广告软文案例
  • 彩视网站建设策划百度第三季度财报2022
  • 做网站图片如何压缩图片自媒体怎么做
  • 无锡新吴区住房和建设交通局网站免费推广seo
  • 合肥网站建设的价格百度投诉中心24人工客服
  • 网站推广的企业春哥seo博客
  • 在那个网站可以搜索做凉菜视频产品策划推广方案
  • 自己做网站导航页让手机变流畅的软件下载
  • 制作网站开发用的图片百度网盘客服
  • 做网站就上凡科建站手机网站模板建站
  • 天津和平做网站多少钱怎么建自己的网站?
  • 我在博洛尼装修的真实seo免费外链工具
  • 织梦可以做商城网站吗网站推广公司
  • 郑州好的网站建设公司百度相册登录入口