Artigo Diretório
Comandos simples básicos
1.重定向
>>为追加
>为覆盖
echo ddd > zft.txt
2.type查看文件
type zft.txt
type zft.txt | more 分页显示
3.
rd . /s/q
cd ..\
4.写入多行
copy con zft.txt 复制zft.txt到屏幕
copy con 文件名.扩展名
开始编辑内容
ctrl+z结束编写
5.移动
move hah.txt c:\
6.删除文件
del 路径/文件名
批量删文件
del *.txt 删除所有txt结尾的
del *.* 删除该目录所有
7.md feifei 创建文件
attrib +h feifei 隐藏文件
attrib +h +s +a feifei 隐藏文件 h隐藏文件夹 s提升为受保护的文件夹 a别人只有读权限
attrib -h feifei 取消隐藏文件
dir /a 观看包括隐藏文件夹
8.修改关联性
assoc .txt=exefile 所有txt改为exe
assoc .txt=txtfile 改回来
9.关机
shutdown -s -f -t 时间 定时关机 -c "显示内容"
shutdown -r -f -t 时间 定时重起
shutdown -a 取消关机
10.修改文件名
ren 旧名字 新名
Processamento em lote
A função do
processamento em lote do Windows de cada comando em lotes de cima para baixo até que o último seja executado
Como criar um
nome de arquivo em lote .
Método Bat : crie um novo arquivo de bloco de notas e altere a extensão para .bat
Noções básicas de processamento em lote
1. @ função echo off:
- Desligue a função de eco, ou seja, o processo de blindagem, recomenda-se colocá-lo na primeira linha do lote
2. pausa
- Geralmente o processamento em lote fecha automaticamente para você, então o objetivo de fazer uma pausa é evitar o fechamento automático
3. título do título
4.echo.
- Ao executar um script em lote, você pode deixar uma linha em branco
5.set define variáveis, comumente usadas na atribuição interativa de scripts
-
Atribuição interativa: definir / p hora = Por favor, insira a hora:
-
Variável de referência:% time%
o tempo é a variável controlável inserida pelo usuário
Caso
@echo off
title applet
echo =========
echo Bem-vindo ao uso de
echo =========
set / p time = Por favor, digite o tempo:
shutdown -s -f -t% time%
echo O desligamento do temporizador foi definido, obrigado por usar a
pausa
6: Uso com goto
: o nome da tag
goto realiza o salto
Exemplo:
@echo off
title Desligar em uma
cor de tempo fixo 0a
: menu
echo =================
Eco menu
echo 1.
Eco de desligamento cronometrado 2. Cancelar
eco de desligamento 3. Sair
echo == ================
set / p num = Sua escolha:
if “% num%” == “1” ir para 1
if “% num%” == “2” ir para 2
se “% num%” == “3” ir para 3
echo don ' t Entrar no
menu guto aleatoriamente
: 1
set / pa = Insira o tempo (unidade / segundo):
shutdown -s -f -t% a%
guto menu
: 2
desligamento - um
menu guto
: 3
saída
Resumo da sintaxe de processamento em lote
1. @ função echo off:
- Use-o para mostrar apenas os resultados
2. pausa
- Use-o para não fechar automaticamente após a execução do programa
3. título do título
- Crie um título para o programa
4.echo.
- Ao executar um script em lote, você pode deixar uma linha em branco
5.set define variáveis, comumente usadas na atribuição interativa de scripts
- Semelhante a extrair variáveis de entrada do usuário em uma linguagem de programação , trazendo a função para usar o valor da variável
6: Uso com goto
- Semelhante a funções em linguagens de programação
- : Nome da função
- ir para função de chamada de nome de função
7. Se declaração
- se “% num%” == “1” goto 1, semelhante a python, você pode usar goto para chamar funções e também pode ecoar o conteúdo de saída
8. A
forma básica da instrução for do script for loop do Windows bat é a seguinte:
在cmd窗口中:for %I in (command1) do command2
在批处理文件中:for %%I in (command1) do command2
A razão para distinguir entre a janela cmd e o ambiente do arquivo em lote é que, nesses dois ambientes, o comportamento da instrução de comando é basicamente o mesmo, mas os detalhes ainda são ligeiramente diferentes. A diferença mais óbvia é: Na janela cmd, a variável formal I após para deve ser citada com um único sinal de porcentagem, ou seja,% I; enquanto em um arquivo de lote, a variável formal I deve ser citada com um sinal de porcentagem duplo, ou seja, %% I. Por uma questão de conveniência, se não particularmente enfatizado, as seguintes explicações tomarão o ambiente de arquivo em lote como exemplo.
Vejamos primeiro quais são os elementos básicos da instrução for:
for, in, e do são as palavras-chave da instrução for, e todas as três são indispensáveis;
%% I é uma referência à variável formal na instrução for, mesmo se a variável l não participar da execução da instrução na instrução após do, deve aparecer 的;
Após em, os parênteses antes do do não podem ser omitidos; o
comando1 representa uma string ou variável e o comando2 representa uma string, variável ou instrução de comando;
Vejamos uma demonstração de um script Windows Bat (indicado como demo1):
@echo off
for %%I in (ABC) do echo %%I
pause
Salve-o como um arquivo .bat (arquivo em lote) e execute-o. Você verá essas informações na janela pop-up em lote:
O loop for para arquivos em lote é tão simples. Vamos dar uma olhada nas precauções para a instrução for e executar um exemplo de loop for mais complexo.
A variável formal I da instrução for pode ser substituída por qualquer uma das 26 letras. Essas letras diferenciam maiúsculas de minúsculas, ou seja, %% I e %% i serão consideradas como não a mesma variável; a variável formal I também pode ser alterado No entanto, para não entrar em conflito com as 10 variáveis formais de% 0 ~% 9 no processamento em lote, não substitua %% I por qualquer uma de %% 0 ~ %% 9;
em e A string ou variável representada por command1 entre do pode ser um ou vários. Cada string ou variável é chamada de um elemento. Entre cada elemento, use a barra de espaço, tabulação e vírgula., ponto e vírgula ou sinal de igual;
para declaração extrai cada elemento em command1 por sua vez, atribui seu valor para a variável formal I, e leva-o para o comando2 depois de fazer para participar da execução do comando; e extrai apenas um elemento por vez, e então executa a instrução do comando após um do, independentemente de este elemento ser trazido para o comando2 participar da operação do comando2; quando a instrução após do é executada uma vez, o próximo elemento no comando1 é extraído e o comando2 é executado novamente e assim por diante. Até que todos os elementos no comando1 tenham sido extraídos, a instrução for declara o fim da execução.
Com a base acima, vamos dar uma olhada no exemplo a seguir. Este exemplo modifica parte do conteúdo em demo1 (indicado como demo2), e o resultado será muito diferente:
@echo off
for %%I in (A,B,C) do echo %%I
pause
Os resultados da operação são os seguintes:
Se o ponto na string de bbs.bathome.cn for substituído por um espaço, tabulação ou sinal de igual, o resultado da execução será o mesmo que o resultado da execução de demo2.
Agora, vamos analisar o processo de execução da instrução for no código demo2:
1. A instrução for usa uma vírgula como separador para dividir a string A, B, C em três elementos: A, B e C, que determina que a instrução após do será executada 3 vezes;
2. O primeiro processo de execução é assim: primeiro pegue a string bbs como o valor da variável formal I, e traga-a para a instrução depois de ser executado, ou seja, execute a instrução echo %% I, e o valor de I neste momento é A, portanto, o resultado da primeira execução exibirá a string A na tela; a segunda execução é igual à primeira execução, exceto que o valor de I foi substituído pelo valor no comando1 neste momento O segundo elemento é a string B; neste loop, após a execução do terceiro eco, toda a instrução for é executada. Nesse momento, a próxima instrução, que é o comando de pausa, será executada.
Uso avançado:
1) Pesquisar quais arquivos estão no diretório atual?
@echo off
for %%i in (*.*) do echo "%%i"
pause
2) Pesquisar todos os arquivos de texto no diretório atual?
@echo off
for %%i in (*.txt) do echo "%%i"
pause
Prática em lote
@echo off
title 测试
color 0a
:menu
echo ===========================
echo 菜单
echo 1.查看ip
echo 2.查看端口
echo 3.创建一个用户
echo 4.查看当前用户
echo 5.退出
echo ===========================
set /p num=您的选择:
if "%num%" == "1" goto 1
if "%num%" == "2" goto 2
if "%num%" == "3" goto 3
if "%num%" == "4" goto 4
if "%num%" == "5" goto 5
echo 别TM乱输入
goto menu
:1
ipconfig
goto menu
:2
netstat -ano
goto menu
:3
net user zft zft /add
goto menu
:4
net user
goto menu
:5
exit