zoukankan      html  css  js  c++  java
  • linux shell脚本基础-----3

    6. 函数

    function_name() {
       statements      
    }

      注意:

        必须在调用一个函数之前先对它进行定义,不存在前向声明;

        当一个函数被调用时,脚本程序的位置参数($*,$@,$#,$1,$2等)会被替换为函数的参数。这也是读取传递给函数的参数的办法。当函数执行完毕后,这些参数会恢复为它们先前的值。

        可以通过return命令让函数返回数字值(注意,return不能返回字符串值)。为让一个函数返回字符串,可以echo一个字符串并捕获其结果(因为子进程会继承父进程的标准输出,因此,子进程的输出也就直接反应到父进程)

        如果在函数里没有使用return命令指定一个返回值,函数返回的就是执行的最后一条命令的退出码

    #!/bin/sh
    
    foo(){
      echo "Hello"  
    }
    
    result="$(foo)"
    echo $result
    
    exit 0
    #!/bin/sh
    
    yes_or_no(){
        echo "Is your name $* ?"
        while true
        do
            echo -n "Enter yes or no: "
            read x
            case "$x" in
                y | yes ) return 0;;
                n | no )  return 1;;
                * )        echo "Answer yes or no"
            esac
        done    
    }
    
    
    echo "Original parameters are $*"
    
    if yes_or_no "$1"   #将$1传递给yes_or_no  
    then
        echo "Hi $1, nice name"
    else
        echo "Newer mind"
    fi
    
    echo
  • 相关阅读:
    前端开发-模块化开发框架RequireJS-1 初识requirejs
    需整理
    SSM
    iomanip
    new与delete使用方法
    分析setting源代码获取sd卡大小
    第一次正式小用Redis存储
    blob storage第一次亲密接触
    第一次使用ashx,被震惊
    Redis中的异步Async
  • 原文地址:https://www.cnblogs.com/wangzhijun/p/3602726.html
Copyright © 2011-2022 走看看