欢迎各位兄弟 发布技术文章

这里的技术是共享的

You are here

linux的shell编程,option="${1}",什么意思,还有后面的 {0},{2}??求教啊

#!/bin/bash
option="${1}"
case ${option} in
-f ) FILE="${2}" 
echo "File name is $FILE " 
;;
-d ) DIR="${2}"
echo "Dir name is $DIR "
;;
*)
echo "`basename ${0}`:usage: [ -f file ] | [ -d directory ] "
exit 1 #
;;
esac
收起
小柳2015 | 浏览 2672 次 |举报
我有更好的答案
推荐于2018-03-11 12:54:50最佳答案
1
2
3
4
5
6
${1}  #输入的第2个参数
${2}  #输入的第3个参数
${0}  #输入的第1个参数
#====== 示例 ================
./main.sh 25 43 
当执行脚本main.sh时候,后面接了25 43 参数,那么$0代表第一个参数main.sh $1代表25 $2代表43 以此类推。

czwan2007 

采纳率:59% 来自团队:LPI-OSS 擅长: python Linux

其他回答

0,1,2分别代表你的命令和后面的第一个,第二个参数
比如你的命令叫test.sh,然后需要填入参数-f test进行运行
完整命令
test.sh -f test
那{0}就是test.sh

{1}就是-f
{2}就是test

来自  https://zhidao.baidu.com/question/1574903820110387460.html



shell命令 grep "${2}$" /etc/passwd 是什么意思? 关键是 ${2}$ ,这是什么?

${2}$是什么?!


${2}$ 前面${2}表示第三个参数,后面的$表示匹配行尾

d0l1 | 浏览 1199 次 |举报
我有更好的答案
2015-11-15最佳答案
我估计你的问题写错了。
我判断原来的shell中写的应该是 grep "${2}" /etc/passwd
你截取的是某个shell中的一句
"${2}" 代表这个shell的第二个输入参数
比如: abc.sh user weblogic
这里第一个参数是 user 第二个参数是weblogic
把第二个参数传入,执行 grep "${2}" /etc/passwd ,运行结果就是:
/etc/passwd文件中,weblogic用户信息被输出出来。
追问
我没有写错,就是“${2}$”。不过还是谢谢你的回答!


来自 https://zhidao.baidu.com/question/1960249005517240220.html

普通分类: