shell文件参数大于10问题
现在需要给shell文件传参数,要传10个以上参数,在shell文件里接收的时候,第一个参数用$1,第二个用$2,第九个用$9,但是超过十个,就不能用$10,$11了,因为shell会把$10堪称$1后面加个0,网上查了一下,有人说用$(10),也有人说用${10},但是我试验了一下,这两种方法在执行shell的时候都会报错,哪位大侠能告诉我怎么作,我的shell文件是sh文件,谢谢了!
[解决办法]
不知 lz 是什么 SHELL
在 BASH 里,$() 表示命令展开,${} 表示参数展开
这里 10 个参数需要用的当然是参数展开
所以 $10 和 ${10} 都是可以的
只是 $10 需要与后面的其他字符串分开,否则或解析出错
{} 的功能是分组,解析时不会出现歧义
[解决办法]
shift
,把参数往前移动