shell3

文章作者:Tyan
博客:noahsnail.com  |  CSDN  |  简书

1. $

在Linux Shell脚本中,$#用来表示传入的参数数量。例如:

  • shell脚本test0
#!/bin/bash
# test $#

echo "The number of parametes is $#."
   
   
   
   
  • 1
  • 2
  • 3
  • 4
  • 执行结果
$ ./test0
The number of parametes is 0.

$ ./test0 1 2 3
The number of parametes is 3.

$ ./test0 a bc
The number of parametes is 2.
   
   
   
   
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8

2. $@

在Linux Shell脚本中,$#用来表示传入的参数列表。例如:

  • shell脚本test1
#!/bin/bash
# test $@

echo "The parametes are $@."
   
   
   
   
  • 1
  • 2
  • 3
  • 4
  • 执行结果
$ ./test1
The parametes are .

$ ./test1 1 2 3
The parametes are 1 2 3.

$ ./test1 a bc
The parametes are a bc.
   
   
   
   
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 遍历$@
for var in $@
do
  echo "$var"
done
   
   
   
   
  • 1
  • 2
  • 3
  • 4

3. 0,0,1

在Linux Shell脚本中,$0用来表示要执行的shell脚本名称。$1$2用来表示传入到脚本中对应位置的参数,例如:

  • shell脚本test2
#!/bin/bash
# test $0,$1

echo "The shell is $0."
echo "The first parameter is $1."
echo "The first parameter is $2."
   
   
   
   
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 运行结果
$ ./test2
The shell is ./test2.
The first parameter is .
The first parameter is .

$ ./test2 1 2
The shell is ./test2.
The first parameter is 1.
The first parameter is 2.

$ ./test2 a 2
The shell is ./test2.
The first parameter is a.
The first parameter is 2.

$ ./test2 a b
The shell is ./test2.
The first parameter is a.
The first parameter is b.

$ ./test2 a b c
The shell is ./test2.
The first parameter is a.
The first parameter is b.
   
   
   
   
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
            
                

你可能感兴趣的:(转载)