sed -e "s/${MyToken}/${arg}/g" file
'arg'的值在前九个参数中运作良好,但在第十个参数后失败了。
#!/bin/ksh
echo There is $# parameters
while [ $# -ne 0 ]; do
echo $1
shift
done
输出:
Will:/home> ./script a b c d e f g h i j k l m n o p q r s t u v w x y z
There is 26 parameters
a
b
c
d
e
f
g
h
i
j
k
l
m
n
o
p
q
r
s
t
u
v
w
x
y
z
$#
计算传递给脚本的参数数量。
Shift
将参数向左移动,因此经过一次循环后,$1
变成了b,以此类推。
${10}
的语法是正确的。例如:set $(seq 10); echo ${10}
- ceving