zoukankan      html  css  js  c++  java
  • shellscript 19 函数

    函数名 ()  // 函数名前面也可以加 function

    {

      命令1

      …

    }

    可以将函数看做是脚本中的一段代码,但是有一个主要区别:执行函数时,它保留当前 shell 和内存信息,此外如果执行或调用一个脚本文件中的另一段代码,将创建一个单独的 shell, 因而取出所有原脚本中定义的存在变量。

    例如 :

    hello()

    {

      echo “Hello, this function is only echo hello”

    }

    所有函数在使用前必须定义,这意味着必须将函数放在脚本开始部分,直至 shell 解析器首次防线它时,才可以使用。

    向函数传递参数

    向函数传递参数就像在一般脚本中使用特殊变量 $1, $2, … $9 一样,函数取得所传参数后,将原始参数传回 shell 脚本,因此最好先在函数内重新设置变量保存所传参数,函数里调用参数( 变量 ) 的转换以 下划线开始,后加变量名,如 _FILENAME 或 _filename.

    从调用函数中返回

    可以将 函数文件先放到 linux 后台,然后当执行别的 shell 文件时,可以直接使用在后台 ( shell ) 中的函数,例如

    pg functions.main

    #! /bin/sh

    findit() {

      echo “Hello,world”

    }

    然后运行这个 shell 脚本,那么 pg 就是将它们放到了后台。。

    ./ pathname/filename

    使用 set 命令可以查看该函数是否载入

    这时候,可以直接在 shell 中执行该函数,即直接在 shell 提示符 下输入 findit 就可以了

    unset function_name 可以将该函数删除

    -- 其实 shell 脚本也是每条命令依次执行,所以,当然可以在某个 shell script 脚本中调用别的 函数( 已经放在 shell中 ).

  • 相关阅读:
    证券公司业务部门深度全解
    转:ORM框架
    深入理解Java:注解(Annotation)基本概念
    Java与.net的区别delegate和event
    XML的四种解析器原理及性能比较
    转: LRU缓存介绍与实现 (Java)
    jquery -- checkbox选中无选中状态
    css -- 背景图片自适应屏幕大小
    javascript -- addEventListener()和removeEventListener
    html5 -- audio标签
  • 原文地址:https://www.cnblogs.com/moveofgod/p/2845649.html
Copyright © 2011-2022 走看看