Windows operating system provides MS-DOS from easily days of its creation. MS-DOS é uma plataforma geralmente usada como linha de comando. MD-DOS tem um monte de recursos que fornecem capacidades de programação. Neste tutorial vamos procurar for
loop que fornece capacidades de loop e enumeração para a linha de comandos.
A Ajuda para o loop pode ser como abaixo.,
$ for /?
Syntax
For loop have the following syntax.
FOR %variable IN (set) DO command
-
FOR
specifies the loop -
%variable
used to store value for each step in the loop -
IN (set)
used to provide list for looping., Este pode ser um arquivo de lista, lista de usuário ou qualquer outra coisa -
DO command
é usado para executar comandos para cada passo
Contagem de Números e Imprima
Vamos começar com um exemplo simples. Vamos apenas imprimir uma lista que contém números de 1 a 5 . Em cada passo um elemento da lista é definido como variável e a variável será impressa com echo
comando.,
$ for %i IN (1,2,3,4,5) DO echo %i
Como podemos ver cada etapa do ciclo é executada como um comando separado .
execute o comando para cada ficheiro
exemplo anterior não tem qualquer benefício para as operações diárias. Administradores de sistema geralmente quer executar um comando nas várias contas de arquivos whit de uma forma simples. Vamos imprimir os ficheiros localizados na pasta actual com o comando echo
.,
$ for /F %i in ("dir /b *") do echo %i
Executar Comando Para Cada Usuário
podemos também executar comandos para cada usuário. Iremos fornecer a lista de utilizadores porque não existe uma forma prática de gerar a lista de utilizadores no ms-dos de uma forma conveniente. Nós forneceremos a lista de usuários ismail, jack, administrator
. Vamos listar informações sobre esses usuários com net user
comando.,
$ for %i in (ismail,jack,administrator) do net user %i
Vamos obter todas as informações de usuários facilmente sem digitar um por um.
execute o comando para cada computador
executaremos o comando ping para cada endereço IP ou nome da máquina fornecido pela lista. Nossa lista de exemplo IP é 192.168.122.1 , 192.168.122.6
.,
$ for %i in (192.168.122.1 , 192.168.122.66) do ping %i
Leitura de Lista De Arquivo
Nos exemplos anteriores, temos duas método para gerar lista. Um método é executar o comando e fornecer o resultado do comando como uma lista para o loop. Outro método é escrever os elementos da lista um por um. Há outra forma de fornecer lista. Lista elementos podem ser lidos a partir de arquivo.
neste exemplo, vamos ler elementos da lista de um ficheiro chamado hosts.txt
.
hosts.,txt
192.168.122.1192.168.122.66google.com
iremos fornecer o/F
no For loop a ler do ficheiro.
$ for /F %i in (hosts.txt) do ping %i
Especificar o Número de Colunas Em Um Arquivo
Há avançadas exemplo de uso com o arquivo. O ficheiro fornecido pode ter mais do que uma coluna delimitada por diferentes delimitadores. Podem ser fornecidas colunas especificadas para o ciclo como elemento da lista.
neste exemplo temos um arquivo que contém nomes de usuário e informações relacionadas., This information is delimited with ,
. We will provide user names by specifying related column.
users.txt
ismail,baydanjohn,backadministrator,windows
$ for /F "tokens=1 delims=," %i in (users.txt) do net user %i