Pular para o conteúdo
Insetário do Bash

/static/insetario/inseto/shift/

Menu

BSH-028 · Deslocamentos

shift

Descarta o primeiro argumento e puxa a fila um passo à frente.

shift joga fora $1 e renumera o resto: $2 vira $1, $3 vira $2, e $# diminui. É o passo do laço clássico de opções: examina, consome, avança.

Com número, anda mais: shift 2 consome dois de uma vez. Pedir mais do que a fila tem falha sem mexer em nada — e $0 assiste de fora, imóvel.

$ cat despacha.sh
#!/bin/bash
tarefa=$1; shift
echo "tarefa: $tarefa · alvos: $@"
$ ./despacha.sh polinizar flor1 flor2
tarefa: polinizar · alvos: flor1 flor2
O primeiro da fila sai; os outros avançam.