• Linux Shell编程(11)——退出和退出状态


    exit命令一般用于结束一个脚本,就像C语言的exit一样。它也能返回一个值给父进程。


    每一个命令都能返回一个退出状态(有时也看做返回状态).一个命令执行成功返回0,一个执行不成功的命令则返回一个非零值,此值通常可以被解释成一个对应的错误值。除了一些例外的情况,一个行为端庄的UNIX命令,程序或是软件包执行成功能返回0的作为退出码。


    同样的,在脚本里的函数和脚本自身都会返回一个退出状态码。在脚本或函数里被执行的最后一个命令将决定退出状态码。在一个脚本里,exit nnn 命令将会返回shell一个nnn的退出状态码。(nnn必须是一个在0-255范围的十进制整数)。



    如果一个脚本以不带参数的exit命令结束,脚本的退出状态码将会是执行exit命令前的最后一个命令的退出码。
    #!/bin/bash
    COMMAND_1
    . . .
    # 脚本将会以最后命令COMMAND_LAST的状态码退出。
    COMMAND_LAST
    exit



    脚本结束没有exit,不带参数的exit和exit $?三者是等价的。

    #!/bin/bash
    COMMAND_1
    . . .
    # 会以最后命令的退出码退出脚本.
    COMMAND_LAST
    exit $?


      
    #!/bin/bash
    COMMAND1
    . . . 
    # 会以最后命令的退出码退出脚本.
    COMMAND_LAST

    $?变量保存了最后一个命令执行后的退出状态。当一个函数返回时,$?保存了函数里最后一个命令的退出状态码。这就是Bash里函数返回值的处理办法。当一个脚本运行结束,$? 变量保存脚本的退出状态,而脚本的退出状态则是脚本中最后一个已执行命令的退出状态。并且依照惯例,0表示执行成功,1-255的整数范围表示错误。
  • 相关阅读:
    PHP迭代与递归实现无限级分类
    初衷
    基于laravel5.4 vue 和vue-element搭建的单页面后台CMS
    lenovo E431 win8系统 安装win7
    Word Break II
    LeetCode:Linked List Cycle II
    PG里如何查看表,索引,表空间,数据库大小
    美国软件工程师面试注意事项
    打印从1到1000的整数,无循环,不判断
    fatal: incorrect checksum in control file
  • 原文地址:https://www.cnblogs.com/new0801/p/6176869.html
Copyright © 2020-2023  润新知