使用getopts处理输入参数
在编写shell脚本中,需要输入参数,使用过程中,getopts更加方便。可以很好的处理用户输入的参数和参数值。
参加如下一段脚本:
#!/bin/bash
while getopts ":a:p:c:e" opt
do
case $opt in
a)
echo "--- -a ---"
echo $OPTARG;;
p)
echo "--- -p ---"
echo $OPTARG;;
c)
echo "--- -c ---"
echo $OPTARG;;
e)
echo "--- -e ---"
echo $OPTARG;;
?)
echo "-a -p -c -e"
exit 1;;
esac
done
linux-UMLhEm:/home/test/shell # ./option.sh -e
--- -e --- linux-UMLhEm:/home/test/shell # ./option.sh -e abc
--- -e --- linux-UMLhEm:/home/test/shell # ./option.sh -a test -p ok
--- -a ---
test
--- -p ---
ok
linux-UMLhEm:/home/test/shell # ./option.sh -a test -p
--- -a ---
test
-a -p -c -e
linux-UMLhEm:/home/test/shell # ./option.sh -a
-a -p -c -e
linux-UMLhEm:/home/test/shell #
while getopts "a:p:c:e" opt
linux-UMLhEm:/home/test/shell # ./option.sh -a
./option.sh: option requires an argument -- a
-a -p -c -e
linux-UMLhEm:/home/test/shell # ./option.sh -a test -p ok
--- -a ---
test
--- -p ---
ok
linux-UMLhEm:/home/test/shell # ./option.sh -a test -p
--- -a ---
test
./option.sh: option requires an argument -- p
-a -p -c -e
使用getopts处理输入参数的更多相关文章
- 使用getopts处理shell中的输入参数
在编写shell脚本中,经常要处理一些输入参数,在使用过程中发现getopts更加方便,能够很好的处理用户输入的参数和参数值. getopts用于处理用户输入参数,举例说明使用方法: while ...
- 如何获得Webapp的根项目路径 即ServletContext.getRealPath() 的输入参数要以"/"开头
ServletContext.getRealPath() 的输入参数要以"/"开头 2014-03-26 15:54 5738人阅读 评论(1) 收藏 举报 版权声明:本文为博主原 ...
- 阿里云提示:对输入参数id未进行正确类型转义,导致整型注入的发生
类似以下提示: XXX.php中,对输入参数id未进行正确类型转义,导致整型注入的发生 解决办法: 找到对应文件:$id = $_GET['id']; 增加以下标红过滤: $id = $_GET['i ...
- java Servlet+mysql 调用带有输入参数和返回值的存储过程(原创)
这个数据访问的功能,我在.NET+Mysql .NET+Sqlserver PHP+Mysql上都实现过,并且都发布在了我博客园里面,因为我觉得这个功能实在是太重要,会让你少写很多SQL语句不说,还 ...
- SQL Server存储过程中使用表值作为输入参数示例
这篇文章主要介绍了SQL Server存储过程中使用表值作为输入参数示例,使用表值参数,可以不必创建临时表或许多参数,即可向 Transact-SQL 语句或例程(如存储过程或函数)发送多行数据,这样 ...
- 输入参数是NSDate,输出结果是星期几的字符串
给你一个方法,输入参数是NSDate,输出结果是星期几的字符串.+ (NSString*)weekdayStringFromDate:(NSDate*)inputDate { NSArray *wee ...
- Shell脚本中判断输入参数个数的方法投稿:junjie 字体:[增加 减小] 类型:转载
Shell脚本中判断输入参数个数的方法 投稿:junjie 字体:[增加 减小] 类型:转载 这篇文章主要介绍了Shell脚本中判断输入参数个数的方法,使用内置变量$#即可实现判断输入了多少个参数 ...
- main()函数的输入参数 main(int argc, char** argv)
一般简单的C++程序,main函数的写法都是 int main() {... ; return 0;},但是,如果在运行程序时需要有参数输入,可以是使用将主函数写成int main(int argv, ...
- 输入参数varargin
一种特别的输入参数varargin 可以在自定义函数中得到,这种函数支持输入参数的变量的个数.这个参数显在输入参数列表的最后一项,它返回一个单元阵列,所以一个输入实参可以包括任意数目的实参.每一个实参 ...
随机推荐
- pytorch visdom可视化工具学习—1—详细使用-2-plotting绘图
3)plotting绘图 我们已经包装了几种常见的plot类型,以便轻松创建基本的可视化.这些可视化是由Plotly驱动的. Visdom支持下列API.由 Plotly 提供可视化支持. vis.s ...
- 吴恩达课后作业学习1-week2-homework-logistic
参考:https://blog.csdn.net/u013733326/article/details/79639509 希望大家直接到上面的网址去查看代码,下面是本人的笔记 搭建一个能够 “识别猫” ...
- docker 10 docker的镜像原理
镜像是什么? 镜像是一个轻量级,可执行的软件包,用来打包运行环境和基于运行环境开发的软件包,它包含某个软件运行环境的所有内容.包括代码,运行时的库,配置文件和环境变量 UnionFs(联合文件系统) ...
- leetcode 344. Reverse String 、541. Reverse String II 、796. Rotate String
344. Reverse String 最基础的旋转字符串 class Solution { public: void reverseString(vector<char>& s) ...
- Red Hat 7.2 RPM安装Mysql 5.7.12
安装Red Hat 7.2 开发包Java包全部安装 下载Mysql 5.7.12 wget http://cdn.mysql.com//Downloads/MySQL-5.7/mysql-5 ...
- bzoj2721 [Violet5]樱花
bzoj2721 [Violet 5]樱花 给出 \(n\) 求 \(\frac{1}{x}+\frac{1}{y}=\frac{1}{n!}\) 的正整数解数量 \(\bmod (10^9+7)\) ...
- autoware
在 Autoware目录下执行 git checkout 将版本切换到1.10.0 因为最新版驱动有问题然后执行 sudo apt-get update sudo apt-get install -y ...
- B. Alyona and a tree
二分+dfs序+前缀和+瞎几把yy #include "a.h" int n; aLL a; struct edge { int to, nx, w; } e[N << ...
- vue 热加载问题
今天是使用vue突然发现没有热加载功能了,然后网上查了一下,配置了一些东西,并没有什么用,然后发现电脑FQ影响 vue 热加载 关掉FQ软件就好了,具体原理我也不清
- vue 中给组建绑定原生事件@click.native=""
<template> <div class="div"> //组建使用 <v-header @click.native=& ...