C:\WINDOWS>HELP FINDSTR
Procura cadeias em ficheiros.
FINDSTR
[/B
] [/E
] [/L
] [/R
] [/S
] [/I
] [/X
] [/V
] [/N
] [/M
] [/O
] [/P
] [/F:fich
][/C:cadeia
] [/G:fich
] [/D:list dir
] [/A:atrib cores
] [/OFF
[LINE
]]cadeias
[[unid:
][caminho
]nomefich
[ ...
]]/B Procura um padrão correspondente no início de uma linha.
/E Procura um padrão correspondente no fim de uma linha.
/L Utiliza as cadeias de procura literalmente.
/R Utiliza as cadeias de procura como expressões normais.
/S Procura ficheiros correspondentes no directório actual
e em todos os subdirectórios.
/I Especifica que a procura não é sensível a maiúsculas e
minúsculas.
/X Imprime linhas com correspondências exactas.
/V Imprime apenas as linhas que não contêm correspondências.
/N Imprime o número da linha antes de cada linha com
correspondência.
/M Imprime apenas o nome do ficheiro, se algum contiver uma
correspondência.
/O Imprime o deslocamento de caracteres antes de cada linha
com correspondência.
/P Ignorar ficheiros com caracteres não imprimíveis.
/OFF
[LINE
] Não ignorar ficheiros com o atributo offline definido.
/A:atrib Especifica o atributo da cor com dois dígitos hexadecimais.
Veja "color /?"
/F:fich Lê a lista de ficheiros a partir do ficheiro especificado
(/ representa a consola).
/C:cadeia Utiliza a cadeia especificada como uma cadeia de parâmetros
de procura.
/G:fich Obtém cadeias de procura a partir do ficheiro especificado
(/ representa a consola).
/D:dir Procurar numa lista de directórios delimitada por ponto e
vírgula
cadeias Texto a procurar.
[unid:
][caminho
]nomefich
Especifica um ou mais ficheiros para a procura.
Utilize espaços para separar múltiplas cadeias de procura, excepto se o
argumento incluir o prefixo /C. Por exemplo, 'FINDSTR "quem está" x.y'
procura "quem" ou "está" no ficheiro x.y. 'FINDSTR /C:"quem está" x.y'
procura "quem está" no ficheiro x.y.
Referência rápida de expressões normais:
. Carácter universal: qualquer carácter
* Repetir: zero ou mais ocorrências do carácter ou classe
^ Posição na linha: início da linha
$ Posição na linha: fim da linha
[classe
] Classe de caracteres: qualquer carácter do conjunto
[^classe
] Classe inversa: qualquer carácter não incluído num conjunto
[x-y
] Intervalo: qualquer carácter dentro do intervalo especificado
\x Escape: utilização literal de metacaracteres x
\<xyz Posição na palavra: início da palavra
xyz\> Posição na palavra: fim da palavra
Para informações detalhadas sobre expressões de FINDSTR, consulte o Manual
de Referência de Comandos.
EXAMPLE
findstr beispiel
findstr "windows" wini.ini
tree | findstr win
C:\WINDOWS>HELP FOR
Executa um comando especifico para cada ficheiro de um conjunto de ficheiros.
FOR %variável IN (conjunto) DO comando
[parâmetrosdocomando
]%variável Especifica um parâmetro substituível.
(conjunto) Especifica um conjunto de um ou mais ficheiros. Os caracteres
universais podem ser utilizados.
comando Especifica o comando a executar para cada ficheiro.
parâmetrosdocomando
Especifica os parâmetros do comando especificado.
Para utilizar o comando FOR num programa batch, especifique %%variável em vez
de %variável. Os nomes das variáveis são sensíveis a maiúsculas e minúsculas,
portanto %i é diferente de %I.
Se as extensões de comandos estiverem activadas, são suportadas as seguintes
formas adicionais do comando FOR:
FOR /D %variável IN (conjunto) DO comando
[parâmetros-do-comando
]Se o conjunto contiver caracteres universais, então é especificada a
correspondência com nomes de directórios em vez de nomes de ficheiros.
FOR /R
[[unidade:
]caminho
] %variável IN (conjunto) DO comando
[parâmetros-do-comando
]Percorre a árvore de directório com raiz em
[unidade:
]caminho, executando
a instrução FOR em cada directório da árvore. Se não for especificado
nenhum directório depois de /R, então é assumido o directório actual.
Se o conjunto for só um carácter de ponto final (.) então só enumerará
a árvore do directório.
FOR /L %variável IN (início, passo, fim) DO comando
[parâmetros-do-comando
]O conjunto é uma sequência de números do início ao fim, segundo o passo.
Assim (1,1,5) geraria a sequência 1 2 3 4 5 e (5,-1,1) geraria a
sequência
(5 4 3 2 1)
FOR /F
["opções"
] %variável IN (conjunto-de-ficheiros) DO comando
[parâmetros-do-comando
]FOR /F
["opções"
] %variável IN ("cadeia") DO comando
[parâmetros-do-comando
]FOR /F
["opções"
] %variável IN ('comando') DO comando
[parâmetros-do-comando
]ou, se a opção usebackq estiver presente:
FOR /F
["opções"
] %variável IN (conjunto-de-ficheiros) DO comando
[parâmetros-do-comando
]FOR /F
["opções"
] %variável IN ('cadeia') DO comando
[parâmetros-do-comando
]FOR /F
["opções"
] %variável IN (`comando`) DO comando
[parâmetros-do-comando
]conjunto-de-ficheiros é um ou mais nomes de ficheiro. Cada ficheiro é
aberto, lido e processado antes de passar para o ficheiro seguinte do
conjunto-de-ficheiros. O processamento consiste em ler o ficheiro,
separá-lo em linhas de texto individuais e, em seguida, analisar cada
linha em zero ou mais tokens. O corpo do ciclo for é então chamado com
o conjunto de valor(es) da variável para a(s) cadeia(s) de tokens
encontrados. Por predefinição, o /F passa o primeiro token separado
por um espaço em cada linha de cada ficheiro. As linhas em branco são
ignoradas. É possível substituir o comportamento da análise predefinido
quando especificar o parâmetro opcional "opções". Esta é uma cadeia que
aparece entre aspas e que contém uma ou mais palavras-chave para
especificar opções de análise diferentes. As palavras-chave são:
eol=c - especifica um carácter de comentário de fim da
linha
(só um).
skip=n - especifica o número de linhas a ignorar no início
do
ficheiro.
delims=xxx - especifica um conjunto de delimitadores. Substitui
o espaço ou a tabulação como o conjunto de
delimitadores predefinido.
tokens=x,y,m-n - especifica quais os tokens de cada linha que devem
ser passados para o corpo do for em cada iteração.
Isto causará a atribuição de nomes de variáveis
adicionais. O formato m-n é um intervalo que
especifica o m-ésimo token através dos n-ésimos
tokens. Se o último carácter da cadeia tokens= for
um asterisco, então uma variável adicional é
atribuída para receber o restante texto da linha
depois de analisado o último token.
usebackq - especifica que é aplicada a nova semântica, onde
uma cadeia de aspas invertidas é executada como um
comando e uma cadeia entre plicas é um comando de
cadeia de parâmetros e permite a utilização de duas
aspas para citar nomes de ficheiro do conjunto de
ficheiros.
Alguns exemplos podem ajudar:
FOR /F "eol=; tokens=2,3* delims=, " %i in (meuficheiro.txt) do @echo %i
%j %k
analisa cada linha do meuficheiro.txt, ignorando as linhas iniciadas com
um ponto e vírgula, passando o 2º e 3º tokens de cada linha para o corpo
for, com tokens delimitados por vírgulas e/ou espaços. Note que as
instruções do corpo do for referenciam %i para obter o 2º sinal, %j
para obter o 3º sinal e %k para obter os restantes tokens depois do 3º.
Para nomes de ficheiros que contêm espaços, é necessário citá-los entre
duas aspas. Para utilizar duas aspas desta forma, também necessita
de utilizar a opção usebackq, caso contrário, as duas aspas serão
interpretadas como a definição da cadeia de parâmetros a analisar.
%i é declarado explicitamente na instrução for e o %j e %k são
declarados implicitamente através da opção tokens=. Pode especificar
até 26 tokens através da linha tokens=, desde que não provoque uma
tentativa de declarar uma variável maior que a letra 'z' ou 'Z'.
Lembre-se de que os nomes das variáveis do FOR são sensíveis a maiúsculas
e minúsculas, globais e que não podem existir mais de 52 activas em
qualquer altura.
Também pode utilizar a lógica de análise FOR /F numa cadeia imediata,
tornando o conjunto-de-ficheiros entre parêntesis numa cadeia entre
aspas,
utilizando caracteres de plicas. Será tratada como uma única linha de
entrada de um ficheiro e analisada.
Finalmente, pode utilizar o comando FOR /F para analisar a saída de um
comando. Isto é possível transformando o conjunto-de-ficheiros entre
parênteses numa cadeia de aspas invertidas. Será tratada como uma linha
de comandos, que é passada a um CMD.EXE subordinado e a saída é capturada
para memória e analisada como se fosse um ficheiro. Assim, o exemplo
seguinte:
FOR /F "usebackq delims==" %i IN (`conjunto`) DO @echo %i
enumeraria os nomes das variáveis de ambiente do ambiente actual.
Além disso, a substituição das referências das variáveis do FOR foram
melhoradas. Pode agora utilizar a seguinte sintaxe opcional:
%~I - expande %I removendo quaisquer aspas (") em redor
%~fI - expande %I para um nome de caminho válido
%~dI - expande %I apenas para uma letra de unidade
%~pI - expande %I apenas para um caminho
%~nI - expande %I apenas para um nome de ficheiro
%~xI - expande %I apenas para uma extensão de ficheiro
%~sI - o caminho expandido contém apenas nomes curtos
%~aI - expande %I para atributos de ficheiro do ficheiro
%~tI - expande %I para a data/hora do ficheiro
%~zI - expande %I para o tamanho do ficheiro
%~$PATH:I - procura os directórios listados na variável
de ambiente PATH e expande %I para o
nome válido do primeiro que for encontrado.
Se o nome da variável de ambiente não estiver
definido ou o ficheiro não for encontrado pela
procura, então este modificador expande para a
cadeia vazia
Os modificadores podem ser combinados para obter resultados compostos:
%~dpI - expande %I apenas para uma letra de unidade ou caminho
%~nxI - expande %I apenas para um nome ou extensão de ficheiro
%~fsI - expande %I apenas para um nome de caminho completo com
nomes curtos
%~dp$PATH:i - procura %I nos directórios listados na variável de
ambiente PATH e expande para a
letra de unidade ou caminho do primeiro que for
encontrado.
%~ftzaI - expande %I para uma linha de saída parecida com o DIR
Nos exemplos anteriores o %I e o PATH podem ser substituídos por outros
valores válidos. A sintaxe %~ é terminada por um nome de variável FOR válido.
A escolha de nomes de variáveis maiúsculas tal como %I é mais legível e
evita confusões com os modificadores, que não são sensíveis a maiúsculas
e minúsculas.
C:\WINDOWS>HELP FORMAT
Formata um disco para ser utilizado com o Windows.
FORMAT volume
[/FS: sistema-de-ficheiros
] [/V: etiqueta
] [/Q
] [/A:tamanho
] [/C
] [/X
] [/P:verificações
]FORMAT volume
[/V:etiqueta
] [/Q
] [/F:tamanho
] [/P:verificações
]FORMAT volume
[/V:etiqueta
] [/Q
] [/T: pistas /N:sectores
] [/P:verificações
]FORMAT volume
[/V:etiqueta
] [/Q
] [/P:verificações
]FORMAT volume
[/Q
]volume Especifica a letra de unidade (seguida de dois pontos),
ponto de montagem ou nome de volume.
/FS:sistema-de-ficheiros
Especifica o tipo do sistema de ficheiros (FAT, FAT32,
NTFS ou UDF).
/V
[:nome
] Especifica o nome do volume.
/Q Executa uma formatação rápida. Note que este parâmetro
substitui /P.
/C Apenas NTFS: Os ficheiros criados no novo volume serão
comprimidos por predefinição.
/X Obriga o volume a desmontar primeiro se for necessário.
Todos os identificadores abertos para o volume deixarão
de ser válidos.
/R:revisão Apenas UDF: Força a formatação numa versão de UDF
específica (1.02, 1.50, 2.00, 2.01, 2.50). A revisão
predefinida é 2.01.
/D UDF 2.50 apenas: os metadados serão duplicados.
/A:tam Substitui o tamanho predefinido da unidade de alocação.
Recomenda-se vivamente a utilização geral das
predefinições.
NTFS suporta 512, 1024, 2048, 4096, 8192, 16K, 32K, 64K.
FAT suporta 512, 1024, 2048, 4096, 8192, 16K, 32K, 64K,
(128K, 256K para tamanhos de sector > 512 bytes).
FAT32 suporta 512, 1024, 2048, 4096, 8192, 16K, 32K, 64K,
(128K, 256K para tamanhos de sector > 512 bytes).
Note que os sistemas de ficheiros FAT e FAT32 impõem as
seguintes restrições quanto ao número de clusters num
volume:
FAT: Número de clusters <= 65526
FAT32: 65526 < Número de clusters < 4177918
A formatação parará imediatamente o processamento se
decidir
que não é possível satisfazer os requisitos anteriores
utilizando o tamanho de cluster especificado.
A compressão de NTFS não é suportada para tamanhos de
unidade
de alocação acima dos 4096.
/F:size Especifica o tamanho da disquete a formatar (1.44)
/T:faixas Especifica o número de faixas por cada lado do disco.
/N:sectores Especifica o número de sectores por cada faixa.
/P:passes Pôr a zero os tempos de passagem dos volumes de todos os
sectores. Este parâmetro não é válido com /Q