Este artigo foi traduzido por máquina. Para visualizar o arquivo em inglês, marque a caixa de seleção Inglês. Você também pode exibir o texto Em inglês em uma janela pop-up, movendo o ponteiro do mouse sobre o texto.
Tradução
Inglês

SHIFT

Altera a posição de parâmetros em lotes em um arquivo em lotes.

Para obter exemplos de como usar esse comando, consulte exemplos.

Sintaxe



Shift [/n <N>]

Parâmetros

Parâmetro Descrição

/n <N>

Especifica a iniciar a alternância no argumento N, onde n é qualquer valor entre 0 e 8. Requer as extensões de comando, que são habilitadas por padrão.

/?

Exibe a Ajuda no prompt de comando.

Comentários

  • O comando shift altera os valores de parâmetros em lotes %0 a %9 copiando cada parâmetro para o anterior — o valor de %1 é copiado para o %0, o valor de %2 é copiado para %1e assim por diante. Isso é útil para gravar um arquivo em lotes que executa a mesma operação em qualquer número de parâmetros.

  • Se as extensões de comando estiverem ativadas, o comando shift suporta a opção de linha de comando /n . A opção /n especifica para iniciar a alternância no enésimo argumento, onde n é qualquer valor entre 0 e 8. Por exemplo, SHIFT /2 seria deslocar %3 para %2, %4 para %3e assim por diante e deixe %0 e %1 não foi afetado. As extensões de comando são ativadas por padrão.

  • Você pode usar o comando shift para criar um arquivo em lotes que aceite mais de dez parâmetros em lotes. Se você especificar mais de 10 parâmetros na linha de comando, aqueles que aparecem depois do décimo (%9) serão deslocados, um de cada vez, para 9.

  • O comando shift não tem efeito sobre o parâmetro de lote % * .

  • Há um comando para trás shift . Após implementar o comando shift , é possível recuperar o parâmetro de lote (%0) que existia antes do deslocamento.

Exemplos

As seguintes linhas de um arquivo em lote chamado minhacop demonstram como usar shift com qualquer número de parâmetros em lotes. Neste exemplo, minhacop copia uma lista de arquivos para um diretório específico. Os parâmetros de lote são representados pelos argumentos de nome de arquivo e diretório.



@ echo off rem Minhacop.BAT copia qualquer número de filesrem para um diretório.

rem o comando usa a seguinte sintaxe: rem minhacop dir arq1 arq2...

set todir = % 1: getfileshiftif "% 1" = ="" goto endcopy %1% todir % goto getfile:endset todir = echo concluído

Referências adicionais

Contribuições da comunidade

ADICIONAR
Mostrar: