Ferramentas de Linha de Comando

Comando Call

( Retorna à Lista completa de comandos Shell )

Comando Call


Chama um programa em lotes a partir de outro, sem interromper o programa em lotes pai. O comando call aceita rótulos como o destino da chamada. Call não tem efeito algum na linha de comando quando usado fora de um script ou arquivo em lotes.



Sintaxe

call [[unidade:][caminho] nome_de_arquivo [parâmetros_em_lotes]] [:rótulo [argumentos]]



Parâmetros

[unidade:][caminho] nome_de_arquivo

Especifica o local e o nome do programa em lotes a ser chamado. O parâmetro nome_de_arquivo deve ter uma extensão .bat ou .cmd.

parâmetros_em_lotes

Especifica qualquer informação de linha de comando exigida pelo programa em lotes, incluindo opções de linha de comando, nomes de arquivo, parâmetros em lotes (isto é, %0 a %9) ou variáveis (por exemplo, %taxa_de_transmissão%).

:rótulo

Especifica o rótulo para o qual o controle do programa em lotes deverá saltar. O uso do comando call com esse parâmetro criará um novo contexto de arquivo em lotes e passará o controle para a instrução posterior ao rótulo especificado. Na primeira vez que o final do arquivo em lotes for encontrado (isto é, após o controle saltar para o rótulo), o controle retornará para a instrução após a instrução call. Na segunda vez que o final do arquivo em lotes for encontrado, o script em lotes será finalizado. Para obter uma descrição da extensão de goto :eof que permite retornar de um script em lotes, consulte Tópicos relacionados.

argumentos

Especifica qualquer informação de linha de comando passada para a nova instância do programa em lotes que começa com at :rótulo, incluindo opções de linha de comando, nomes de arquivo, parâmetros em lotes (isto é, %1 a %9) ou variáveis (por exemplo, %taxa_de_transmissão%).

/?

Exibe informações de ajuda no prompt de comando.

Comentários

Usando parâmetros em lotes

Os parâmetros em lotes podem conter qualquer informação que pode ser passada para um programa em lotes, incluindo opções de linha de comando, nomes de arquivo, parâmetros em lotes (isto é, %0 a %9) ou variáveis (por exemplo, %taxa_de_transmissão%). Para obter mais informações sobre parâmetros em lotes, consulte Tópicos relacionados.



Usando pipes e símbolos de redirecionamento

Não utilize pipes e símbolos de redirecionamento com o comando call.



Fazendo uma chamada recursiva

É possível criar um programa em lotes que chama a si mesmo, porém, é necessário fornecer uma condição de saída. Caso contrário, os programas em lotes pai e filho poderão permanecer em loop indefinidamente.



Trabalhando com extensões de comando

Com as extensões de comando ativadas (isto é, o padrão), o comando call aceita um rótulo como destino da chamada. A sintaxe correta é a seguinte:



call :rótulo argumentos



Para obter mais informações sobre como ativar e desativar extensões de comando, consulte cmd em Tópicos relacionados.



Exemplos

Para executar o programa Verifnov.bat a partir de outro programa em lotes, digite o comando a seguir no programa em lotes pai:



call verifnov



Se o programa em lotes pai aceitar dois parâmetros em lotes e você desejar passar esses parâmetros para o arquivo Verifnov.bat, use o comando a seguir no programa em lotes pai:



call verifnov %1 %2


Leia mais sobre arquivos em lotes

Sistemas Operacionais | Linux Comandos | Linux Shell Script | Atalhos do Office | Literatura e Leitura | Principais Autores | História da Literatura |


Formatando legenda
FormatoSignificado
Itálico Informações que o usuário deve fornecer
Negrito Elementos que o usuário deve digitar exatamente como mostrado
Reticências (...) Parâmetro que pode ser repetido várias vezes em uma linha de comando
Entre colchetes ([]) Itens opcionais
Entre chaves ({});opções separadas por barra vertical (|).Exemplo: {even|odd}Conjunto de opções entre as quais o usuário deve escolher apenas uma
Fonte Courier Código ou resultado de um programa


Envie seu comentário:
Nome:

E-mail:

Comentário:


Fonte: •Manual do Windows XP • ( Literatura e Leitura ) • ( Dicas sobre Sistemas Operacionais ) • ( Retorna à Lista completa de comandos Shell ) •