linux shell编程对变量的赋值

2016-11-11 00:00:00嘉辉 Linux认证

  shell对变量的赋值,所有的变量都是由字符串组成,不需要对变量名预先声明,而且有很多关键字供编程者使用。下面列举例子详细说明。 在终端下建立文件 #vi s2.sh

  #!/bin/sh

  #set a variable a

  a="hello world"

  #print a

  echo "A is :"

  echo $a

  在这个程序当中,可以看到shell编程与C编程的区别,没有那么严格的语法,在每句不需要加“;”,

  而且在shell中引用变量的时候前面加“$”。

  1 当变量名与其他文字混淆的时候,需要加“{}”

  #!/bin/sh

  # set a variable num

  num=2

  echo "the variable num is $numnd"

  运行程序后,答案并不是 the variable num is 2nd,而是什么都没有输出。因为bash会寻找numnd变量,但是并没有给这个变量赋值。所以将程序改为:

  echo "the variable num is {$num}nd"

  2 默认变量

  $#:传入脚本的命令行参数个数

  $*:所有命令行的参数值,而且各个参数值之间有空格表示

  $0:命令本身,就是要执行的shell文件名

  $1:第一个命令行参数

  $2:第二个命令行参数

  $3

  $4

  example:

  #!/bin/sh

  echo "number of vars:"$#

  echo "number of vars:"$0

  echo "number of vars:"$*

  echo "number of vars:"$1

  echo "number of vars:"$2

  echo "number of vars:"$3

  运行./file 11 22 33

  输出结果:

  3

  file

  11 22 33

  11

  22

  33

  3局部变量

  在变量首次赋值是加关键字local可以声明为局部变量。

  #!/bin/sh

  hello="aa"

  echo $hello

  function fucn1{

  local hello="bb"

  echo $hello

  }

  func1

  echo $hello

[Linux认证]相关推荐

[Linux认证]相关栏目推荐
查看更多
上一篇:2016年Linux认证考试复习要点辅导 下一篇:Linux认证笔试真题及答案(最新)