Por favor, desculpe meu inexperiente. Eu não tenho muita experiência com a linha de comando.
Nas minhas pesquisas, a principal razão para o uso do CMD (*) é a automação. Eu não encontrei casos concretos. A maioria dos exemplos são exemplos planejados ou casos simples em que a automação não é realmente necessária.
Daí a minha pergunta - Quais são os exemplos de ações que CMD e arquivos de lote são usados no mundo real? (E como abaixo - além da preferência pessoal e onde há é sem GUI.) Eu não estou procurando o script em si, apenas seu objetivo.
* Além da preferência pessoal, ou casos em que uma GUI não está disponível.
windows-7
windows
command-line
batch
powershell
ispiro
fonte
fonte
Respostas:
Os arquivos em lote têm o mesmo benefício que qualquer outra ferramenta de script, tornando simples executar tarefas repetitivas (às vezes complexas, às vezes chatas).
Escrevi um script em lote muito simples há alguns meses, porque queria que um conjunto de comandos fosse executado todas as noites às 18h. Então, eu criei este script que usa comandos mercurial para checar mudanças (o dono de um site que eu mantenho adiciona e remove coisas com FTP). Em seguida, confirma todas as alterações e as envia para a origem (meu servidor).
Então eu configurei uma tarefa agendada para executar este script diariamente. Este, por acaso, é o primeiro script em lote que escrevi em anos, no entanto, devido a minha mudança para o Mac no meu último trabalho, onde estou desenvolvendo.
No entanto, eu uso scripts de shell (mesmo tipo de coisa em um sistema operacional diferente) diariamente. O que eu mais uso garante que eu tenha uma unidade de rede montada, me registre em nosso repositório de código-fonte (solicitando uma senha, é claro) e disparos do script de construção. Ao todo, levaria 3 minutos para entrar com os comandos para fazer isso sozinho, mas quando o fiz, eu regularmente esquecia de verificar se o meu drive estava montado (mapeado), e isso causou um atraso de 10 a 20 minutos ... O roteiro não esquece.
Eu costumava ser um administrador de sistemas para uma faculdade comunitária e usava scripts de lote o tempo todo, principalmente, como você mencionou, para automação. Quando eu comecei lá, tivemos que visitar cada máquina para atualizar manualmente o antivírus e executar uma varredura. Eu criei um script em lote que copiava a atualização de um local específico em nossa rede, instalava e iniciava uma varredura. Então, em cada máquina de um grupo, jogue meu disquete na unidade, pressione Window-R (para abrir a caixa de diálogo de execução) e digite a: \ up.bat ... Depois que eu comecei, comecei a retroceder e leia até que tenham terminado.
Eu criei outro script para colocar novas máquinas (ou máquinas antigas adaptadas) em funcionamento com nossa configuração padrão antes de comprarmos o software de imagens. O que anteriormente era um processo tedioso de inserir este disco, clique duas vezes em algumas coisas, clique em próximo algumas vezes, espere ..., clique em avançar mais um pouco, alterne discos, faça a mesma coisa ... Se transformou em disco de inserção, insira disquete. .. comando de execução. mudar discos quando solicitado ... Quando a rede era mais confiável, que foi alterado para apenas inserir o disquete e executar o comando, ele baixou os arquivos de instalação de uma unidade de rede para mim.
fonte
CMD
é apenas uma pequena casa de força disponível em todas as janelas do PC.net user {samid} /domain
pode rapidamente me dizer mais estatísticas que eu quero saber sobre uma conta de domínio edsquery user -samid {samid}|dsget user -memberof -expand|dsget group -samid
abrange o resto, pesquisando recursivamente membros do grupo para uma conta de domínio.Eu posso procurar rapidamente todos os locais de rede mapeados em um PC:
for /f "tokens=3" %f in ('net use ^|findstr \\') do echo %f
Ou lotes podem ser usados para trabalhos onde a compilação é impraticável
Este foi um arquivo de lote rápido e sujo que eu coloquei em conjunto para limpar arquivos temporários do IE. É mais fácil colocar um arquivo bat na área de trabalho de alguém e tentar explicar como limpar os arquivos temporários.
Por último, porque posso continuar o dia todo sobre os benefícios e a utilidade do CMD, ele me ensinou muito sobre como o script funciona e como o computador interpreta os comandos. Não foi até que eu aprendi CMD / Batch que eu realmente me interessei por scripts e programação.
Editar:
Apenas um exemplo concreto de CMD sendo mais eficaz que C # (Hello World!)
C #
CMD
Lote
Ou
O CMD e o Batch têm muito menos sobrecarga quando se trata de tarefas simples.
fonte
dsquery user -samid {samid}|dsget user -memberof -expand|dsget group -samid
leva de 2 a 3 minutos para processar ~ 100 membros se eu fizer isso via mmc.exe, pode levar 30-40 minutosLooking up domain accounts info / network locations / clearing temp files of a running application.
(A parte sobre CMD vs C # não é minha pergunta. Acabei de mencionar o que fiz para me esclarecer.) Obrigado.