linuxShellStudyNote

2018-01-22  本文已影响0人  由木人_番茄

1 Shell 中的变量

2 变量的引用

`` # 反引号,shell会将反引号中的内容视作命令,并用指向结果代替反引号以及反引号中的内容

'' #单引号,全引用,单引号中的所以内容都不会被解释成其他意思,只保留显示的意义

""# 双引号,半引用,双引号中的内容处理 `` '' "" $ \ 之外,均保留显示的意义

取变量的值

  • 使用 $var_name # 获取变量的值,可能会出错
  • 使用 ${var_name} # 推荐使用这种方式获取变量的值

3 算术表达式

4输入输出

5命令替换

6测试

7函数

1定义

func_name(){
  statment1
  statment2
}
# or
function func_name(){
  statment1
  statment2
}

2调用

func_name arg1 arg2 arg3

3函数链接/函数调用函数

helloWord(){
  echo "Hello World"
}
function alice(){
  echo "in allice"
  helloWord()
  echo "end"
}
#调用函数
allice()

4函数返回值

Shell 中的函数的返回值必须是0-255之间的整数,即函数只能返回状态码

函数的返回值可以通过$?来获取

5获取函数参数

# $# 获取参数的个数
# $n 获取第n个参数,其中n为正整数
# $@ $* 获取所有参数
# 移动位置参数
# shift

function func(){
  while (( $# > 0 ))
  do
      echo "${1}"
      echo $#
      #shift改变$#的值
      shift
  done
}
#间接参数传递
var1=var2
var3=var1
echo ${!var3}
#output var2
# 传递数组
# shell 不支持传递数组,但是可以通过其他方式传递数组的值
func_name "${arr[@]}"
# 双引号必须加,否则会出错
# 调用其他文件的函数
#! /bin/bash
#载入函数库
. file_name.sh
# dot 后面必须有**空格**

上一篇 下一篇

猜你喜欢

热点阅读