一、比较

1、return是一个关键字exit是一个函数
2、return编程语言级别,它表示调用堆栈的返回exit系统调用级别,它表示了一个进程的结束
3、return函数的退出(返回)exit进程的退出
4、return编程语言提供exit操作系统提供(或者函数库中给出)
5、return用于结束一个函数的执行,将函数的执行信息传出个其他调用函数使用;exit用于退出应用程序,删除进程使用的内存空间,并将应用程序的一个状态返回给OS,这个状态标识了应用程序的一些运行信息,这个信息和操作系统有关,一般 0 为正常退出,非0为异常退出。
6、非主函数中调用return和exit效果很明显,但是在main函数中调用return和exit的现象就很模糊,多数情况下现象都是一致的。

二、特殊用法

1、exit 0
  正常运行程序并退出程序。使用echo $?返回0,也就是说调用环境认为你的程序执行正常。
2、exit 1
  非正常运行导致退出程序,也可以是其他数字,例如exit -1。系统程序对于程序运行错误是有约定含义的,不为 0 就表示程序运行出错。调用环境根据这个返回值,判断你的程序运行是否正常。
3、return
  用于返回值。若在主函数中,则会退出函数并返回一个值。
4、使用注意
  在 shell 编程中,要慎用 exit 0。首先必须弄清楚 exit 0 不是 return 0, 区别在于return 0用于函数中,表示函数执行成功并返回 0;而exit 0 则表示当前程序执行成功并且直接退出当前执行脚本或程序。相反,return -1 表示函数执行失败返回错误exit 1 (或大于 1)表示程序执行失败并退出程序
  exit 用来返回进程结束时的状态,一般在父shell中使用变量 $? 来获取子shell 的退出状态,判断子shell是否执行成功

shell脚本:exit和return相关推荐

  1. Shell脚本中的return,exit 0,以及 父进程获取子进程的变量

    1 Shell脚本中的return,exit 0 shell脚本中,一般在脚本的函数里面使用return语句,函数中使用return语句后,表示函数执行完毕,函数中return语句后面的代码将不再执行 ...

  2. shell 脚本 exit 1 报错:numeric argument required问题解决

    shell 脚本 exit 1 报错:numeric argument required问题解决 参考文章: (1)shell 脚本 exit 1 报错:numeric argument requir ...

  3. linux脚本中的exit,Shell中exit和return的区别讲解

    1.exit命令 exit命令是Shell内建命令,用于退出当前Shell进程.使用格式如下: exit [] 可以指定退出状态n,n的取值范围是0-255,一般情况下,0表示正常退出,非零表示异常退 ...

  4. Shell 中 exit 和 return 的区别

    1.exit 命令 exit 命令是 Shell 内建命令,用于退出当前 Shell 进程.使用格式如下: exit [N] 可以指定退出状态 N,N 的取值范围是 0-255,一般情况下,0 表示正 ...

  5. Shell脚本学习指南(五)——变量、判断、重复动作

    文章目录 前言 变量与算术 变量赋值与环境 参数展开 展开运算符 位置参数 特殊变量 算术展开 退出状态 退出状态值 if-else-else-fi语句 逻辑的NOT.AND与OR test命令 ca ...

  6. shell脚本:exit 0 和 exit 1有什么区别?他们和return不同,return是关键字,exit是一个shell函数

    定义 exit 0 :正常运行程序并退出程序.使用echo $? 返回0,也就是说调用环境认为你的程序执行正常. exit 1 :非正常运行导致退出程序,也可以是其他数字.系统程序对于程序运行错误是有 ...

  7. shell脚本的exit问题(退出脚本还是退出终端)

    2019独角兽企业重金招聘Python工程师标准>>> 今天编写shell脚本.想要程序在运行到一个地方的时候进行判断,结果为真退出程序.运行时直接退出了SecureCRT终端.纠结 ...

  8. mysql shell eof_shell脚本 exit命令 EOF用法 数组用法

    一.exit命令(shell脚本出错不停止,除非显示exit) 格式:exit n 退出,设置退出码为n.(Cause the shell to exit with a status of n.) 格 ...

  9. Shell脚本循环语句及exit、continue和break用法

    目录 一.for循环语句 二.while循环语句结构 三.until 循环语句结构 四.exit.continue和break 一.for循环语句 用法: 读取不同的变量值,用来逐个执行同一组命令 f ...

  10. matlab脚本终止、暂停的几个函数(pause、error、break、quit、exit、return)

    在写脚本的时候用到这些功能并不多,但是偶尔还是需要用到,每次都得重新查--这次整理一下记录几个常见的控制程序走停的函数pause.input.error.warning.break.quit.exit ...

最新文章

  1. python元组元素的提取比_Python 元组数据类型(tuple)详解 [访问元组元素][修改元组元素][删除元组][学习 Python 必备基础知识][看此一篇就够了]...
  2. phpsso.php 注入漏洞,PHPCMS各种注入漏洞补丁
  3. 26 页高清大数据开发代码速查表,提升效率必备!【可下载】
  4. 一键安装lamp之php插件
  5. “国际软件自由日”介绍
  6. 单射(或称单变换)、双射与满射
  7. Struts2标签库和OGNL
  8. 走在网页游戏开发的路上(十)
  9. MySQL5.6忘记root用户名和密码
  10. dnf剑魂buff等级上限_DNF:又是随机大坑?8月新护石装备可升级,但升3个需要刷半年...
  11. 关于移植jSON编译时报错sbrkr.c:(.text+0xc): undefined reference to `_sbrk'处理
  12. python和c先学哪个-C 和 Python语言先学哪个好?
  13. flex-direction css3属性设定弹性盒子模型子元素反向排列
  14. 程序员双十一都该买点啥?
  15. 从单机数据库到分布式数据库,从数据库事务到分布式事务
  16. bugku-pokergame
  17. go语言学习:go类型系统
  18. linux各个文件夹,linux各个目录文件夹含义
  19. 你那么年轻却窥觑整个世界,你那么浮躁却想要看透生活
  20. Markdown设置字体大小、颜色、类型、加粗

热门文章

  1. c语言结构体作为形参是否加struct_(struct)结构体变量作为函数参数调用的方法小结...
  2. PCB拼板邮票孔制作规范!
  3. python opencv入门 Meanshift 和 Camshift 算法(40)
  4. 软考数据库详细知识点整理(全)
  5. Django的数据库创建、连接与迁移
  6. homeassistant主动推送信息
  7. Python各个版本特性
  8. oracle同步数据adg_[adg数据库同步机制]三分钟读懂Oracle数据库容灾架之DataGuard
  9. C语言 输入三角形的三条边(a,b,c),计算三角形的面积
  10. Linux read系统调用之 submit_bio()