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

购物网站设计欣赏教学网站开发背景及意义

购物网站设计欣赏,教学网站开发背景及意义,佛山seo优化电话,scratch免费下载在日常的系统管理和自动化任务中#xff0c;使用 Shell 脚本可以为我们节省大量时间和精力。 文章将以输入 IP 为例#xff0c;通过几个版本逐步完善一个案例。 原始需求 编写一个交互式的 Shell 脚本#xff0c;运行时让用户可以输入IP地址#xff0c;并且脚本会将输入…在日常的系统管理和自动化任务中使用 Shell 脚本可以为我们节省大量时间和精力。 文章将以输入 IP 为例通过几个版本逐步完善一个案例。 原始需求 编写一个交互式的 Shell 脚本运行时让用户可以输入IP地址并且脚本会将输入的IP地址打印出来。 实现 首先在命令行终端下创建一个新的文件比如 i-demo.sh并确保该文件具有可执行权限。 touch i-demo.sh chmod x i-demo.sh版本一 shell 编程中read 命令可以在运行时阻塞线程并等待用户输入。因此脚本可以简单实现如下 #!/bin/bashread userIPecho You entered IP : $userIP 以上代码中 read 命令用于提示用户输入IP地址并将用户输入存储在变量 userIP 中。随后echo 命令用于打印出用户输入的IP地址。 版本二 添加提示符 “Please Input IP”使得交互比较友好 #!/bin/bashread -p Please Input IP: userIPecho You entered IP: $userIPread -p 是 Shell 脚本中用来提示用户输入的命令。它的作用是在用户输入之前向屏幕上显示一行提示信息让用户知道他们需要输入什么样的内容。-p 选项表示 prompt提示后面紧跟着要显示给用户的提示信息。 版本三 给一个默认值。 #!/bin/bashdefaultIP127.0.0.1read -p Please Input IP: userIPif [ -z $userIP ]; thenuserIP$defaultIP fiecho You entered IP: $userIP其中if [ -z $userIP ] 表示输入为空时将 userIP 赋值为默认值 defaultIP 。 另一种实现 #!/bin/bashdefaultIP127.0.0.1read -p Please Input IP: userIPuserIP${userIP:-$defaultIP}echo You entered IP: $userIP其中 userIP${userIP:-$defaultIP} 这行代码将会把 $userIP 的值设置为 $defaultIP 的值当且仅当 $userIP 未被设置或者为空。这个语法可以用来提供一个默认值以防止变量为空时的错误。 效果如下 其中第一次输出默认值。第二次输出输入的值。 版本四 在光标处展示默认值并且支持用户直接编辑 #!/bin/bashdefaultIP127.0.0.1read -p Please Input IP (default: $defaultIP): -e -i $defaultIP userIPuserIP${userIP:-$defaultIP}echo You entered IP: $userIP其中 read 命令后的 -e -i $defaultIP 将默认IP放置在了光标处并支持编辑。 效果如下 上图中第一次直接回车打印了默认值。第二次直接便捷给出的默认IP回车后打印编辑后的IP. 版本五 在默认值的基础上添加IP校验并且校验不通过时提示再次输入 #!/bin/bashdefaultIP127.0.0.1# IP 校验函数 function validateIP() {local ip$1if [[ $ip ~ ^[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}$ ]]; thenlocal IFS.ip($ip)(( ${ip[0]} 255 ${ip[1]} 255 ${ip[2]} 255 ${ip[3]} 255 ))return $?elsereturn 1fi }# 提示输入 read -p Please Input IP (default is $defaultIP): -e -i $defaultIP userIP userIP${userIP:-$defaultIP}# 校验若不通过一直循环 while true; doif ! validateIP $userIP; thenread -p Invalid IP format ($userIP). Please try again: userIPelsebreakfi done# 打印结果 echo You entered a valid IP: $userIP 其中 local IFS. 这行代码中的 IFS 是 Bash shell 中的一个特殊变量它代表了“Internal Field Separator”内部字段分隔符用来指定在 Bash shell 中如何切割字符串。在这行代码中将 IFS 设置为 . 意味着告诉 Bash 在处理字符串时以 . 作为分隔符来切割字符串。 ip($ip) 这行代码使用了 Bash 中的数组赋值语法。它将名为 ip 的字符串分割成一个数组按照内部字段分隔符IFS中指定的字符在这个例子中是.进行分割。这意味着如果 $ip 包含了一个IP地址那么这个命令会把IP地址中的每一部分分别存储到数组 ip 的不同元素中。 例如如果 $ip 的值为 192.168.1.1那么执行 ip($ip) 后数组 ip 的各个元素就会分别存储为 ${ip[0]} 192, ${ip[1]} 168, ${ip[2]} 1, ${ip[3]} 1。 (( ${ip[0]} 255 ${ip[1]} 255 ${ip[2]} 255 ${ip[3]} 255 )) 这行代码使用了 Bash 中的算术表达式 ((...))并结合了数组中的值进行了数值比较。 在这里${ip[0]}、${ip[1]}、${ip[2]} 和 ${ip[3]} 分别代表了 IP 地址中的四个部分。通过将它们与常量值 255 进行比较并使用逻辑与运算符 来连接所有比较操作可以确保每个部分都不大于 255。 因此整个表达式的含义是检查 IP 地址的各个部分是否都小于等于 255。如果所有条件都成立那么整个表达式的结果为真非零否则为假零。 $? 是在Bash中用来获取上一个命令的退出状态的特殊变量。当执行一个命令后$? 会保存该命令的退出状态或者返回值。 通常情况下如果命令执行成功则$? 的值为0如果命令执行失败则 $? 的值为非零通常是1。 在先前提到的代码中(( ${ip[0]} 255 ${ip[1]} 255 ${ip[2]} 255 ${ip[3]} 255 )) 这个条件表达式执行完毕后它的返回值将会被保存在 $? 中。因此可以使用 $? 来检查IP地址校验的结果如果 $? 的值为0则表示IP地址合法否则表示IP地址不合法。 其效果如下
http://www.pierceye.com/news/348241/

相关文章:

  • 在家里组一个服务器做网站有心学做网站
  • 广东企业网站模板推荐flash网址
  • 网站标题正确书写标准h5页面制作平台有哪些
  • 详情页设计与制作网站品牌词优化怎么做
  • 成都科技网站建设咨询电话平面设计品牌设计
  • 网站建设的可行性报告做网站需要了解的知识
  • 高邮网站建设推广怎么做
  • 珠宝网站建设公司wordpress 显示指定分类
  • 站酷网设计素材龙岗网站建设公司哪家口碑好
  • 达州达县网站建设上海网络推广服务公司
  • 周口网站关键词优化助孕网站优化推广
  • 做网站的钱叫什么科目企业做网站的好处有哪些
  • 做外贸网站流程如何建立网上商城
  • 爱网站关键词挖掘广西住房城乡建设厅
  • 零基础网站建设入门到精通视频教程河源建设网站
  • 焦作市建设工程网站石龙网站开发
  • 建公司网站报价牛商网网站建设
  • 中国现代公路建设有限公司网站网站建设技巧饣金手指排名27
  • 食品网站开发的背景阿里云oss建站 直接上传wordpress
  • 石泉政协网站建设方案网络广告推广服务
  • 怎么用lamp做网站桂林网
  • 织梦网站专题页面如何做网站排名优化提升快速
  • 公司建设网站费用吗qq官方网站登录入口
  • 怎么用自己的服务器做网站国外酷炫网站有哪些
  • 音乐网站建设规划国内最近新闻
  • 东莞骄阳网站建设wordpress 安装出现 过多重定向
  • 学校网站建设开题报告站长工具域名备案查询
  • 网站商城微信支付宝支付宝支付接口网站 空间地址是什么
  • 公司网站功能模块弹出全屏视频网站怎么做
  • 网站实现搜索功能网站建设时间规划