Pular para o conteúdo
Skillpedia
Código em geral40 mil · #5033

batch-files

Ajuda seu agente a escrever e corrigir scripts simples para o Windows. É útil para automatizar tarefas repetitivas no seu computador.

O que ela faz

Este agente ajuda a criar e gerenciar scripts chamados 'batch files' (.bat ou .cmd) no Windows. Ele pode escrever novos scripts, corrigir erros em existentes e automatizar tarefas repetitivas no seu computador.

Quando usar

  • ✓Quando você precisa criar um script para automatizar uma tarefa no Windows.
  • ✓Se um script .bat ou .cmd não está funcionando como esperado.
  • ✓Para organizar e manter seus scripts de linha de comando.

Exemplo do que pedir para a IA

“Crie um script .bat que copie todos os arquivos .txt de uma pasta para outra.”

Quer saber mais? Abra as seções abaixo.

Como usar

O jeito mais fácil: copie a mensagem abaixo e cole no Claude, ChatGPT, Cursor ou outra IA. Ela lê a skill e segue as instruções.

Link da skill

https://github.com/github/awesome-copilot/blob/main/skills/batch-files/SKILL.md

Mensagem pronta para colar

Use esta skill para me ajudar: https://github.com/github/awesome-copilot/blob/main/skills/batch-files/SKILL.md Leia o arquivo SKILL.md desse link e siga as instruções dele na minha tarefa.
Como funciona

Ele entende como os comandos do Windows são processados, desde a substituição de variáveis até a execução de comandos. Ele também sabe como usar estruturas de controle como 'if' e 'for' para fazer os scripts tomarem decisões e repetirem ações.

Instalação

Jeito mais fácil: copie o link da skill e cole no Claude, ChatGPT ou Cursor pedindo para seguir as instruções.

No terminal (Claude Code, Codex, Cursor), na pasta do projeto:

npx skills add github/awesome-copilot --skill batch-files

Ou baixe só o arquivo:

curl -L https://raw.githubusercontent.com/github/awesome-copilot/main/skills/batch-files/SKILL.md -o SKILL.md
Conteúdo técnico (SKILL.md)

Tradução do texto original do autor no GitHub. Os comandos e códigos estão como no original.

Arquivos Batch

Uma habilidade abrangente para criar, editar, depurar e manter arquivos batch do Windows (.bat/.cmd) usando cmd.exe. Aplica-se ao desenvolvimento de ferramentas CLI, automação de administração de sistemas, tarefas agendadas, scripts de operações de arquivos e scripts executáveis baseados em PATH.

Quando Usar Esta Habilidade

  • Criar ou editar arquivos .bat ou .cmd
  • Automatizar tarefas do Windows (operações de arquivos, implantações, backups)
  • Construir ferramentas CLI destinadas a uma pasta bin/ no PATH
  • Escrever scripts de tarefas agendadas (SCHTASKS, Agendador de Tarefas)
  • Depurar problemas de script batch (expansão de variáveis, níveis de erro, aspas)
  • Integrar scripts batch com ferramentas externas (curl, git, Node.js, Python)
  • Estruturar novos projetos baseados em batch com modelos estruturados

Pré-requisitos

  • SO baseado em Windows NT (Windows 7 ou posterior)
  • cmd.exe (integrado)
  • Opcional: um diretório bin/ no PATH para distribuir scripts como comandos
  • Opcional: PATHEXT configurado para incluir .BAT;.CMD (padrão no Windows)

Interpretação de Comandos

O cmd.exe processa cada linha em quatro estágios, em ordem:

  1. Substituição de variáveis — Tokens %VAR% são substituídos por valores de variáveis de ambiente. %0–%9 referenciam argumentos do script. %* expande para todos os argumentos.
  2. Aspas e escape — O acento circunflexo ^ faz o escape de caracteres especiais (& | < > ^). As aspas impedem a interpretação de caracteres especiais contidos nelas. Em arquivos batch, %% resulta em um % literal.
  3. Análise de sintaxe — As linhas são divididas em pipelines (|), comandos compostos (&, &&, ||) e grupos entre parênteses ( ).
  4. Redirecionamento — > sobrescreve, >> anexa, < lê entrada, 2> redireciona stderr, 2>&1 mescla stderr com stdout, >NUL descarta a saída.

Variáveis

Variáveis de Ambiente

set _MY_VAR=Hello World
echo %_MY_VAR%
set _MY_VAR=
  • set sem argumentos lista todas as variáveis
  • set _PREFIX lista variáveis que começam com _PREFIX
  • Sem espaços em torno de = — set name = val define a variável "name " para " val"

Variáveis Especiais

Variável Valor
%CD% Diretório atual
%DATE% Data do sistema (dependente da localidade)
%TIME% Hora do sistema HH:MM:SS.mm
%RANDOM% Número pseudoaleatório 0–32767
%ERRORLEVEL% Código de saída do último comando
%USERNAME% Nome do usuário atual
%USERPROFILE% Caminho do perfil do usuário atual
%TEMP% / %TMP% Diretório de arquivos temporários
%PATHEXT% Lista de extensões executáveis
%COMSPEC% Caminho para o cmd.exe

Escopo com SETLOCAL / ENDLOCAL

setlocal
set _LOCAL_VAR=scoped value
endlocal
REM _LOCAL_VAR is no longer defined here

Para retornar um valor de um bloco com escopo:

endlocal & set _RESULT=%_LOCAL_VAR%

Expansão Atrasada

Variáveis dentro de blocos entre parênteses são expandidas no momento da análise. Use expansão atrasada para avaliação em tempo de execução:

setlocal EnableDelayedExpansion
set _COUNT=0
for /l %%i in (1,1,5) do (
    set /a _COUNT+=1
    echo !_COUNT!
)
endlocal
  • !VAR! expande no tempo de execução (atrasado)
  • %VAR% expande no tempo de análise (imediato)

Fluxo de Controle

Execução Condicional

if exist "output.txt" echo File found
if not defined _MY_VAR echo Variable not set
if "%_STATUS%"=="ready" (echo Go) else (echo Wait)
if %ERRORLEVEL% neq 0 echo Command failed

Operadores de comparação: equ, neq, lss, leq, gtr, geq. Use /i para comparação de strings sem distinção entre maiúsculas e minúsculas.

Comandos Compostos

command1 & command2        & REM Always run both
command1 && command2       & REM Run command2 only if command1 succeeds
command1 || command2       & REM Run command2 only if command1 fails

Loops FOR

REM Iterate over a set of values
for %%i in (alpha beta gamma) do echo %%i

REM Numeric range: start, step, end
for /l %%i in (1,1,10) do echo %%i

REM Files in a directory
for %%f in (*.txt) do echo %%f

REM Recursive file search
for /r %%f in (*.log) do echo %%f

REM Directories only
for /d %%d in (*) do echo %%d

REM Parse command output
for /f "tokens=1,2 delims=:" %%a in ('ipconfig ^| findstr "IPv4"') do echo %%b

REM Parse file lines
for /f "usebackq tokens=*" %%a in ("data.txt") do echo %%a

GOTO e Rótulos

goto :main_logic
:usage
echo Usage: %~nx0 [options]
exit /b 1

:main_logic
echo Running main logic...
goto :eof

goto :eof sai do script ou sub-rotina atual. Rótulos começam com :.

Argumentos de Linha de Comando

Sintaxe Valor
%0 Nome do script como invocado

…

Perguntas frequentes

O que são 'batch files'?

São arquivos de texto simples com a extensão .bat ou .cmd que contêm uma sequência de comandos do Windows para serem executados automaticamente.

Preciso instalar algo para usar esses scripts?

Não, os 'batch files' usam o próprio interpretador de comandos do Windows (cmd.exe), que já vem instalado.

Como o script sabe quais argumentos usar?

Você pode passar informações para o script quando o executa, como nomes de arquivos ou pastas, e o script pode usá-los através de variáveis especiais como %1, %2, etc.

Detalhes

Descrição original do autor

Expert-level Windows batch file (.bat/.cmd) skill for writing, debugging, and maintaining CMD scripts. Use when asked to "create a batch file", "write a .bat script", "automate a Windows task", "CMD scripting", "batch automation", "scheduled task script", "Windows shell script", or when working with .bat/.cmd files in the workspace. Covers cmd.exe syntax, environment variables, control flow, strin

repo: github/awesome-copilot

Popularidade

Estrelas no GitHub
40 mil
Posição no ranking
#5033
Licença
MIT
Atualizada em
15/10/2026

Essa skill é útil?

0

Entre para votar.

Comentários

  • …

Mais skills deste repositório

Skills parecidas