@ Gilles: De acordo com a página de manual do bash, set -sem argumentos, os parâmetros posicionais permanecem inalterados.
Camh
@camh Devo discordar. Vejo isso no manual: set - Se nenhum argumento seguir esta opção, os parâmetros posicionais não serão definidos. Caso contrário, os parâmetros posicionais são definidos como args, mesmo que alguns deles comecem com a -.
Kdubs
@kdubs para os quais você está citando a página de manual set --. Eu usei set -(hífen único), que diz: "Se não houver argumentos, os parâmetros posicionais permanecem inalterados".
camh
você está certo. Eu os confundi. minha tela fez o seu - olhar como -
kdubs
4
Desmarque facilmente todos os parâmetros posicionais com:
shift $#
Para remover os três primeiros parâmetros posicionais:
shift 3
Shift "sai" dos primeiros N parâmetros posicionais. Usando $ #, obtemos o número total de parâmetros posicionais. O comando, portanto, exibe todos os parâmetros posicionais.
set -
sem argumentos, os parâmetros posicionais permanecem inalterados.set --
. Eu useiset -
(hífen único), que diz: "Se não houver argumentos, os parâmetros posicionais permanecem inalterados".Desmarque facilmente todos os parâmetros posicionais com:
Para remover os três primeiros parâmetros posicionais:
Shift "sai" dos primeiros N parâmetros posicionais. Usando $ #, obtemos o número total de parâmetros posicionais. O comando, portanto, exibe todos os parâmetros posicionais.
fonte