env / shift / exit
最后更新于:2022-04-02 03:53:28
[TOC]
## env
语法
```
#!/usr/bin/env NAME
```
当你使用脚本无法确定在哪里路径下,可使用 env
例子:
```
#!/usr/bin/env node
```
## shift 命令
* `shift`表示剔除脚本的第一个传入参数,后面参数往前排
* `shiftn`表示剔除脚本的前n个传入参数,后面参数往前排
```
#!/bin/bash
echo "一共输入了 $# 个参数"
while [ "$1" != "" ]; do
echo "剩下 $# 个参数"
echo "参数:$1"
shift
done
```
输出
```
一共输入了 4 个参数
剩下 4 个参数
参数:a
剩下 3 个参数
参数:b
剩下 2 个参数
参数:c
剩下 1 个参数
参数:d
```
## exit 命令
```
# 退出值为0(成功)
$ exit 0
# 退出值为1(失败)
$ exit 1
```
`0`表示正常,`1`表示发生错误,`2`表示用法不对,`126`表示不是可执行脚本,`127`表示命令没有发现。如果脚本被信号`N`终止,则退出值为`128 + N`
';