获取shell脚本参数 linux脚本编写教程

在编写脚本的过程中,我们经常需要设置IP地址、密码等变量。为了便于使用,我们将为这些变量的值提供一个选择范围或设置随机值和默认值。那么要判断脚本用户是否输入了密码,应该怎么做呢?看下面一个常见的例子:#设置和检测数据库根密码配置root = ' OpenSSL rand-base*** 8...

在编写脚本的过程中,我们经常需要设置IP地址、密码等变量。为了便于使用,我们将为这些变量的值提供一个选择范围或设置随机值和默认值。

那么要判断脚本用户是否输入了密码,应该怎么做呢?看下面一个常见的例子:

#设置和检测数据库根密码配置

root = ' OpenSSL rand-base*** 8 | MD 5 sum | cut-c 1-8 '

阅读-p “请输入密码[root],默认为[$ { root }]:”root_pass

然后我们运行这段:

然后我们运行这一段:

运行结果

此时,会出现两种情况:

用户输入了自定义的密码

用户没有输入任何信息

我们先来完善一下剧本:

#设置和检测数据库根密码配置

root = ' OpenSSL rand-base*** 8 | MD 5 sum | cut-c 1-8 '

echo-e “请输入密码[root],默认为[$ { root }]:n ”

读取root_pass

echo-e “当前设置的密码:[$ root _ pass]”

继续运行

继续跑。

执行结果

此时可以看到,如果直接输入,会出现空白字现象,但是密码只有用户输入了才会出现。看到这里,有人会说:你没设置,但是有密码就奇怪了。的确,我还没设置好。下面我们来设置一下:

#设置和检测数据库根密码配置

root = ' OpenSSL rand-base*** 8 | MD 5 sum | cut-c 1-8 '

echo-e “请输入密码[root],默认为[$ { root }]:n ”

读取root_pass

如果[[-z “$ root _ pass & # 8221]];然后

root_pass=$root

船方不负担装货费用

echo-e “当前设置的密码:[$ root _ pass]”

然后执行:

然后执行:

将显示默认(随机)密码。

那就在这里解决吧。看到这里,可能又有人迷茫了?就在这里?

别急,继续往下看。

在上面的例子中,只设置了一个变量,但是如果需要设置很多变量呢?我该怎么办?一个设定加一个判断?

辜莞允,这太麻烦了。这里有一个简单的方法:定义函数

功能内容如下:

input_check()

#1不需要设置的参考变量值[提供默认变量]

#2请参考该参数的备注[例如,数据库的root密码]

#3参数是一个随机/默认值。

#4是变量名。

如果[[-z “”]];然后

echo-e “${red_zt}检测到没有输入,默认值[$ { 3 }]$ { end } ”

评价回声报。=″`

其他

评价回声报。=″`

船方不负担装货费用

}

怎么用?让我们把上面的案例放进去:

input_check()

#1不需要设置的参考变量值[提供默认变量]

#2请参考该参数的备注[例如,数据库的root密码]

#3参数是一个随机/默认值。

#4是变量名。

如果[[-z “”]];然后

echo-e “${red_zt}检测到没有输入,默认值[$ { 3 }]$ { end } ”

评价回声报。=″`

其他

评价回声报。=″`

船方不负担装货费用

}

输入(){

echo-e “”

阅读2美元

}

root = ' OpenSSL rand-base*** 8 | MD 5 sum | cut-c 1-8 '

输入“请输入密码[root],默认为[$ { root }]:”root_pass

input _ check & # 8220$ root _ pass & # 8221“数据库[root]的密码”“$ root & # 8221“root _ pass & # 8221

然后执行:

然后执行:

通过函数判断和设置变量值。

有了这个函数,我们每次需要判断一个值时,只需要按照参数传递要求调用它就可以实现默认值和自定义值的配置,例如:

#设置和检测数据库根密码配置

root = ' OpenSSL rand-base*** 8 | MD 5 sum | cut-c 1-8 '

输入“请输入密码[root],默认为[$ { root }]:”root_pass

input _ check & # 8220$ root _ pass & # 8221“数据库[root]的密码”“$ root & # 8221“root _ pass & # 8221

#数据库的初始权限配置

输入“关闭[root]用户远程登录[y/n],默认为[y]”脱臼

input _ check & # 8220$ disob rogin ”“数据库[root]的用户登录权限”“y & # 8221“脱臼”

#删除测试数据库?

输入“删除[测试]数据库[y/n],默认为[y]”rm_db

input _ check & # 8220$ rm _ db & # 8221“删除[测试]数据库确认”“y & # 8221“rm _ db & # 8221

#结果总结

red _ z _ green _ z & # 8220数据库[root]用户的密码:”“[$ root _ pass]”

red _ z _ green _ z & # 8220允许[root]远程登录:”“[$ distro gin]”

red _ z _ green _ z & # 8220删除[测试]数据库:”“[$ RM _ db]”

输入“继续[回车继续]”Y

你开辟了一个新的世界吗?其实你可以继续完善这个功能。如果想了解更多,请关注我,等待更新。

本文来自牛奶煮萝莉投稿,不代表舒华文档立场,如若转载,请注明出处:https://www.chinashuhua.cn/24/587048.html

打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
() 0
上一篇 06-11
下一篇 06-11

相关推荐

  • 爬虫软件哪个好用 获取客户数据的软件推荐

    目前市场上常用的爬虫工具可以分为云网络爬虫和数据采集器两大类(除了自己开发设计的爬虫工具和爬虫框架)。云爬虫就是不需要下载安装程序。您可以在网页上构建网络爬虫,并在web服务器上运行它。网站提供网络带宽和24小时服务。数据采集器一般是指安装下载,然后构建一个网络

    2023-07-29 11:25:01
    271 0
  • 红米手机root权限获取 红米手机专用root工具

    想法分为以下几点:1.正式解锁BL锁2.解锁后刷入note8专用REC(注意和note8pro不一样)3.刷入REC后,打开高级选项,先点击“签名根”。选择“root系统”后,重启定位器,ROOT已经完成。注意:root的前提下,必须先解锁官方BL锁。解锁官方BL锁流程:1.登录定位器小米账号,连续点击版

    2023-07-28 21:01:01
    949 0
  • 怎么获取root权限小米,分享两种超实用的方法

    前言:海德里诺。:长时间在线知识分享。关于如何获得root权限,Android前面写了很多相关的解锁教程。之前的都是相关通用教程。查看之前的文章,可以点击我的头像,关注我,查看我的头条文章列表。任何安卓***在获得root权限之前,都必须解锁。今天,我分享了我很久以来关于互联

    2023-07-27 04:53:01
    926 0
  • 《江南百景图》树苗获取方法介绍 树苗怎么获得

    江南百景图树苗是最近刚在游戏中出现的产品,因为2022年的植树节马上就要到了,大家都可以在游戏中获得树苗。有好的获取小树苗方法的手游小编会在下面的攻略中分享给大家,玩家可以快速参考攻略,找出获取的方法。江南百景取苗方法介绍一、采集方式:是树苗游戏中植物节交换的

    2023-07-26 23:55:01
    450 0

评论列表

联系我们

在线咨询: QQ交谈

邮件:admin@qq.com

工作时间:周一至周五,9:30-18:30,节假日休息

关注微信