shell shift
时间: 2023-06-28 20:10:56 浏览: 141
`shift` 是一个 shell 内置命令,用于移动位置参数(positional parameters)。它可以将所有位置参数向左移动一个位置,即将 $2$ 赋值给 $1$,将 $3$ 赋值给 $2$,以此类推。同时,移动后的 $N$($N$ 为位置参数的总个数)会被删除,而 $0$(代表 shell 脚本的名字)不会发生变化。
使用方法如下:
```bash
shift [n]
```
其中,`n` 表示要移动的位置参数个数,默认为 $1$。如果指定了 `n`,则会将前 $n$ 个位置参数删除并移动剩下的位置参数。
示例:
```bash
#!/bin/bash
echo "Before shift: \$1=$1, \$2=$2, \$3=$3"
shift
echo "After shift: \$1=$1, \$2=$2, \$3=$3"
```
假设执行 `./test.sh hello world bye`,则输出如下:
```
Before shift: $1=hello, $2=world, $3=bye
After shift: $1=world, $2=bye, $3=
```
可以看到,执行 `shift` 后,前两个位置参数被删除,而第三个位置参数变成了新的 `$1`。
相关问题
shell shift
"shift" 命令是在 Linux 和 Unix 系统中常用的命令。它可以将命令行参数向左移动一位,也就是将第一个参数删除,其余参数向前移动一位。例如,如果现在有三个参数 "a","b","c",那么执行 "shift" 命令后,参数变为 "b","c"。
常用语法为 shift [n],其中n是移动的参数个数,默认为1
例如 "shift 2" 命令就是将命令行参数向左移动两位
Shell shift
"shift" 命令是在 Linux 和 Unix 系统中常用的命令。它可以将命令行参数向左移动一位,也就是将第一个参数删除,其余参数向前移动一位。例如,如果现在有三个参数 "a","b","c",那么执行 "shift" 命令后,参数变为 "b","c"。
常用语法为 shift [n],其中n是移动的参数个数,默认为1
例如 "shift 2" 命令就是将命令行参数向左移动两位
阅读全文