Bash 入门教程10-处理用户输入
用户输入参数是程序运行的必要条件,如何在Bash中调用输入的参数,将Bash和GCC联合调试,这是linux工程师必备的一个能力。
$./shawn 10 30
这是一个很典型的例子,后面两个就是传入bash的命令行参数。
bash shell 会将一些成为位置参数的特殊变量来分配给命令行输入,其中$1就是第一个参数,$2是第二个参数,$3是第三个参数。一直到第9 个参数,因为Linux对命令行参数的个数限定在9个,因为char **最大支持的长度就是10个sizeof(typename T ).
下面给出一个在shell脚本中国使用单个命令行的例子:
$cat test
$!/bin/bash
#using the commad line parameter
factorial=1
for((number=1;number<=$1;number++))
do
factorial=$[¥factorial*$nubmer]
done
echo the factorial of $1 is $factorial
$
$./test
the factorial of 5 is 120 .
我们可以在shell脚本中像使用其他变量一样使用$1。shell脚本会自动将命令行参数的值分配给变量,不需要再多的任何处理。如果需要输入更多的命令行选项,就要在命令行上每个参数都必须用空格分开。