- Learning Linux Shell Scripting
- Ganesh Naik
- 218字
- 2021-06-25 22:02:57
Understanding getopts
Command-line parameters passed along with commands are also called positional parameters. Many times, we need to pass options such as -f and -v along with a positional parameter.
Let's look at an example for passing the -x or-y options along with commands.
Write shell script getopt.sh, as follows:
#!/bin/bash USAGE="usage: $0 -x -y" while getopts :xy: opt_char do case $opt_char in x) echo "Option x was called." ;; y) echo "Option y was called. Argument called is $OPTARG" ;; ?) echo "$OPTARG is not a valid option." echo "$USAGE" ;; esac done
Execute this program:
$ ./getopt.sh
You will learn about the switch and case statements in the next chapters. In this script, if option -x is passed, a case statement for x will be executed. If the -y option is passed, then a case statement for -y will be executed. If no option is passed, there will not be any output on the screen.
Let us run script with different options::
$ ./getopt.sh -x
The output is as follows:
Option y was called. Argument called is my_file.
$ ./getopt.sh -x -y my_file
Output:
Option x was called.
Option y was called. Argument called is my_file.
$ ./getopt.sh -y my_file -x
Output:
Option y was called. Argument called is my_file.
Option x was called.
推薦閱讀
- 基于LabWindows/CVI的虛擬儀器設計與應用
- MCSA Windows Server 2016 Certification Guide:Exam 70-741
- 機器學習流水線實戰
- OpenStack Cloud Computing Cookbook(Second Edition)
- AI 3.0
- 中國戰略性新興產業研究與發展·工業機器人
- HBase Essentials
- 人工智能:智能人機交互
- 手把手教你學Flash CS3
- x86/x64體系探索及編程
- 微控制器的選擇與應用
- Architectural Patterns
- 我的IT世界
- Hands-On Data Analysis with NumPy and pandas
- SQL Server 2017 Machine Learning Services with R