这个变量写法有什么特殊含义?

sh/bash/dash/ksh/zsh等Shell脚本
回复
头像
愤怒的阿狸
帖子: 48
注册时间: 2013-03-04 11:27

这个变量写法有什么特殊含义?

#1

帖子 愤怒的阿狸 » 2013-10-25 7:44

a=${1:-5}
echo $a
5
那个1代表什么?在一本文档中看到这样写


:em09
头像
eexpress
帖子: 58428
注册时间: 2005-08-14 21:55
来自: 长沙

Re: 这个变量写法有什么特殊含义?

#2

帖子 eexpress » 2013-10-25 11:39

cli参数第一个。
这语法是如果$1没内容,就使用5代替。
● 鸣学
头像
qagkiss
帖子: 15
注册时间: 2012-10-09 22:17
系统: ubuntu

Re: 这个变量写法有什么特殊含义?

#3

帖子 qagkiss » 2013-11-28 13:44

正确的写法应该是下面这个把
a=${!1:-5}
echo $a

好象是如果要用到$1 $2 之类的至,在大括号中要把 $ 换成 !
回复