我使用过的Linux命令之exit - 退出当前shell
本文链接:http://codingstandards.iteye.com/blog/836625
(转载请注明出处)
用途说明
exit命令用于退出当前shell,在shell脚本中可以终止当前脚本执行。
常用参数
格式:exit n
退出。设置退出码为n。(Cause the shell to exit with a status of n.)
格式:exit
退出。退出码不变,即为最后一个命令的退出码。(If n is omitted, the exit status is that of the last command executed. )
格式:$?
上一个命令的退出码。
格式:trap "commands" EXIT
退出时执行commands指定的命令。( A trap on EXIT is executed before the shell terminates.)
退出码(exit status,或exit code)的约定:
0表示成功(Zero - Success)
非0表示失败(Non-Zero - Failure)
2表示用法不当(Incorrect Usage)
127表示命令没有找到(Command Not Found)
126表示不是可执行的(Not an executable)
>=128 信号产生
man 3 exit 写道
The C standard specifies two constants, EXIT_SUCCESS and EXIT_FAILURE, that may be passed to exit() to indicate
successful or unsuccessful termination, respectively.
以下摘自/usr/include/stdlib.h
#define EXIT_FAILURE 1 /* Failing exit status. */
#define EXIT_SUCCESS 0 /* Successful exit status. */
BSD试图对退出码标准化。
man 3 exit 写道
BSD has attempted to standardize exit codes; see the file <sysexits.h>.
以下摘自/usr/include/sysexits.h
#define EX_OK 0 /* successful termination */
#define EX__BASE 64 /* base value for error messages */
#define EX_USAGE 64 /* command line usage error */
#define EX_DATAERR 65 /* data format error */
#define EX_NOINPUT 66 /* cannot open input */
#define EX_NOUSER 67 /* addressee unknown */
#define EX_NOHOST 68 /* host name unknown */
#define EX_UNAVAILABLE 69 /* service unavailable */
#define EX_SOFTWARE 70 /* internal software error */
#define EX_OSERR 71 /* system error (e.g., can't fork) */
#define EX_OSFILE 72 /* critical OS file missing */
#define EX_CANTCREAT 73 /* can't create (user) output file */
#define EX_IOERR 74 /* input/output error */
#define EX_TEMPFAIL 75 /* temp failure; user is invited to retry */
#define EX_PROTOCOL 76 /* remote error in protocol */
#define EX_NOPERM 77 /* permission denied */
#define EX_CONFIG 78 /* configuration error */
#define EX__MAX 78 /* maximum listed value */
使用示例
示例一 退出当前shell
[root@new55 ~]#
[root@new55 ~]# exit
logout
示例二 在脚本中,进入脚本所在目录,否则退出
cd $(dirname $0) || exit 1
示例三 在脚本中,判断参数数量,不匹配就打印使用方式,退出
if [ "$#" -ne "2" ]; then
echo "usage: $0 <area> <hours>"
exit 2
fi
示例四 在脚本中,退出时删除临时文件
trap "rm -f tmpfile; echo Bye." EXIT
示例五 检查上一命令的退出码
./mycommand.sh
EXCODE=$?
if [ "$EXCODE" == "0" ]; then
echo "O.K"
fi
问题思考
相关资料
【1】91linux Linux exit 命令
【2】曲径通幽 [概念]exit n
【3】Linux大学 Bash Shell Exit Status Tutorial with Practical Examples
返回 我使用过的Linux命令系列总目录
分享到:
相关推荐
* 使用 exit 命令退出 csh shell 并返回到 bash shell * 使用 find 命令在系统的根目录下寻找文件,例如查找文件名第一个字符为任意字符,后面是 "asswd" 的文件 * 使用 ls 命令列出 /etc 目录下的所有以 ".conf" ...
退出 csh,回到 bash:使用 `exit` 命令可以退出 csh shell,回到 bash shell。 二、目录和文件命令 Linux 中的目录和文件命令是非常重要的,它们可以帮助我们管理和操作文件和目录。 1. 文件和目录的操作命令:...
exit命令用来退出当前shell,返回到上一级shell或关闭终端。 6. finger: 显示用户信息,例如finger username finger命令用来显示用户的信息,例如用户名、姓名、邮箱、电话号码等。 7. free: 显示系统的内存和交换...
exit命令用来退出当前的shell或退出终端 ,并返回给定值。 执行exit可使shell以指定的状态值退出。若不设置状态值参数,则shell以预设值退出。状态值0代表执行成功,其他值代表执行失败。状态值参数多用于脚本中,在...
- 退出Linux系统:`exit` #### 三、文件维护命令 **实验目的:** - 实习几个基本的文件维护命令。 **知识点:** - **常用文件维护命令:** - `ls`:列出目录内容。 - `pwd`:显示当前工作目录。 - `cd`:改变...
"sqlite-shell-linux-x86-3080500.zip" 是针对Linux平台的x86架构的SQLite3命令行接口的压缩包,版本号为3.8.5。这个压缩包包含了一个名为"sqlite3"的可执行文件,它是用于管理和操作SQLite数据库的shell程序。 ...
* ls [list]:这个命令就相当于 DOS 下的 dir 命令一样,这也是 Linux 控制台命令中最为重要几个命令之一。 * ls -a:显示所有文件,包括隐藏文件 * ls -l:使用长格式显示文件内容 文件属性命令: * 文件的属性...
- exit命令退出当前shell环境; - finger用于查看用户信息; - free命令用来显示系统内存的使用情况; - halt和reboot命令用于关闭和重启系统; - id命令显示用户识别信息; - kill命令向进程发送信号; - last和...
5. **exit** - 退出当前的shell或终端会话。这对于远程登录或者在图形界面下的终端窗口尤其有用。 6. **finger** - 提供关于其他用户的详细信息,包括他们的登录名、全名、电子邮件地址、空闲时间等。 7. **free**...
6. **信号处理**:Shell需要处理各种信号,如`SIGINT`(Ctrl+C)用于中断当前命令,`SIGHUP`(挂断信号)用于退出Shell。通过`signal()`或`sigaction()`函数可以注册信号处理器。 7. **循环执行**:Shell是一个循环...
- exit:退出当前shell。 - finger:显示系统用户的详细信息。 - free:显示系统的内存和交换空间使用情况。 - groupdel:删除一个用户组。 - groupmod:修改一个用户组的属性。 - halt:停止所有系统进程并...
在Linux系统中,Bash(Bourne-Again SHell)是默认的命令解释器,是用户与操作系统交互的重要工具。Bash shell脚本是一种强大的编程语言,它允许用户编写自动化任务,执行日常管理任务,或者创建复杂的系统服务。...
- exit命令退出当前shell环境。 - finger命令显示用户信息。 - free命令显示系统内存使用情况。 - ps命令用于显示当前运行的进程状态。 - kill命令发送信号给进程。 - useradd、userdel、usermod分别用于添加、删除...
例如,在 Shell 中输入 `exit` 后,将退出当前的 Shell 会话。 finger finger 命令用于显示用户的信息,包括用户的姓名、办公室号码、办公室电话号码、家庭电话号码等。其基本语法为:`finger [用户名]`。例如,...
5. **退出Shell**:在DOS和Linux中,退出命令提示符都是`exit`。 6. **日期和时间**:DOS的`date`和`time`命令在Linux中依然保留,但命令行为`date`和`date`,用于显示和设置日期及时间。 7. **删除文件**:DOS的`...
5. **exit**:关闭当前shell会话或退出登录状态,结束用户与系统的交互。 6. **finger**:提供关于指定用户的详细信息,如用户名、终端、登录时间、最后在线时间等。 7. **free**:显示系统内存的使用情况,包括总...
- `exit`:退出Shell。这个命令会结束当前的Shell会话,将控制权返回给父进程,通常是终端模拟器。 2)支持后台命令:在Linux中,我们可以通过在命令后面加上`&`来将命令放入后台执行。例如,`command &`会让命令...
Linux操作系统以其开源、... - `exit`:结束当前Shell会话。 这只是Linux命令的一小部分,实际上还有许多其他命令和参数,学习使用它们需要不断实践和查阅文档。熟悉这些命令后,你将能更自如地管理和维护Linux系统。
exit - 退出shell `exit` 命令用于退出当前的shell会话。例如: ``` exit ``` #### 55. sync - 强制同步内存到磁盘 `sync` 命令用于强制将内存中的数据同步到磁盘。例如: ``` sync ``` #### 56. df - 显示磁盘...
1. **Shell基础知识**:首先,你需要了解Shell的基本概念,包括Shell的启动、退出、命令历史记录、环境变量以及如何设置Shell选项。理解这些基本概念将为你提供编写脚本的基础。 2. **命令行参数和变量**:学习如何...