while getopts "f:t:d:g:o:p:b:q:r:" opt; do
case "$opt" in
(f)fan=${OPTARG}
(t)..
esac
done
shift $(( OPTIND - 1 ));
如何提供输入?有人能告诉我如何为上述代码片段提供输入吗?
答案1
对于特定的 while 循环(使用getopts
),你通常会将其放在shell 脚本然后使用你的选项/参数调用脚本,例如
#!/bin/bash
while getopts "f:t:d:g:o:p:b:q:r:" opt; do
case "$opt" in
f) fan=${OPTARG}
;;
t) echo "doing somthing with option t = $OPTARG"
;;
esac
done
shift $(( OPTIND - 1 ));
然后使其可执行
chmod +x yourscript.sh
然后运行它
$ ./yourscript.sh -t 3
doing somthing with option t = 3