Sistemas  
 
Rede de conhecimento computador >> Sistemas >> Windows 7 >> Content
Posso ter um arquivo em lote em execução, continue em outro, mas é o mesmo local que era antes de mover o Windows 7?
Você não pode retomar diretamente a execução de um arquivo em lotes exatamente de onde ele parou no Windows 7 (ou em qualquer outra versão do Windows) após um sistema de reinicialização ou desligamento. Os arquivos em lote são inerentemente apátridas; Eles não salvam seu estado interno entre as corridas.

No entanto, você pode obter um efeito semelhante usando técnicas para gerenciar o estado de processamento de arquivos * externamente * com o arquivo em lote. Aqui estão algumas abordagens:

1. Usando um arquivo temporário para rastrear o progresso:

Este método envolve a criação de um arquivo temporário que armazena o último item processado ou número da linha. O arquivo em lote lê esse arquivo no início para determinar onde retomar.

`` `lote
@echo off
Definir "tempfile =progress.tmp"
Defina "InputFile =Your_input_file.txt"

::Verifique se o arquivo de progresso existe. Caso contrário, comece do início.
se existir "%tempfile%" (
set /p "lastProcedLine =" <"%tempfile%"
eco retomando da linha:%LastProcessedLine %
) outro (
Definir "LastProcessesLine =0"
eco começando do começo
)

::Processe o arquivo, começando na última linha processada.
para /f "skip =%lastprocesslline%delims =" %% a in (%inputfile%)
Linha de processamento de eco:%% A
::Sua lógica de processamento aqui ...

::Atualize o arquivo de progresso com o número da linha atual.
eco %% a> "%tempfile%"
)

del "%tempfile%"
Echo terminou!
`` `

2. Usando um banco de dados (mais complexo, mas robusto):

Para cenários mais complexos ou conjuntos de dados grandes, um pequeno banco de dados (como o SQLite) seria mais adequado. O arquivo em lote atualizaria o banco de dados com as informações de progresso. Isso oferece melhor resiliência e rastreamento. Essa abordagem requer a instalação do SQLite e o uso de suas ferramentas de linha de comando no seu script em lote.

3. Modificando o arquivo de entrada:

Isso é menos elegante, mas pode funcionar para casos simples. Você pode modificar o próprio arquivo de entrada para marcar linhas processadas (por exemplo, adicionar um marcador ao início de cada linha). O script então pula linhas com o marcador. Isso é menos robusto porque altera diretamente o arquivo de entrada.

Considerações importantes:

* Manuseio de erro: Adicione o manuseio de erros aos seus arquivos em lote (por exemplo, `Se ErrorLevel 1 ...`). Se o processamento falhar, seu arquivo de progresso poderá ser inconsistente.
* Atomicidade: Se você estiver escrevendo em arquivos, considere possíveis problemas com gravações parciais devido a interrupções. Use técnicas para garantir a integridade dos dados.
* Bloqueio de arquivo: Se várias instâncias do arquivo em lote puderem ser executadas simultaneamente, implemente o bloqueio de arquivos para evitar condições de corrida.


Lembre -se de substituir `" your_input_file.txt "` com o nome real do seu arquivo de entrada. O exemplo fornecido mostra a linha de processamento por linha, mas você pode adaptá -lo para processar outras estruturas de dados. Escolha o método que melhor se adapte às suas necessidades e complexidade. A abordagem de arquivo temporário é a mais fácil para casos simples. Para qualquer coisa mais envolvida, um banco de dados é uma solução muito mais robusta.

Anterior :

Próximo :
  Os artigos relacionados
·Quantos megabytes levarão para atualizar o Windows 7 6…
·Você pode instalar o Windows 7 no Kindle Fire? 
·Qual software que o Windows 7 costumava executar? 
·É possível instalar o Windows Movie Maker e não o Wi…
·Onde estão meus downloads no Windows 8? 
·Você pode fazer downgrade do Windows 8.1 para 7? 
·Como foi feita a janela 7? 
·Por que sua barra de tarefas mudou do Windows 7 para o …
·Como instalar o Windows 7 em um HP Pavilion 061? 
·Como você abre o modo de Deus do Windows 7? 
  Artigos em destaque
·Como editar um Path Automator 
·Qual é o gerenciamento de processos no Windows 7? 
·Como ativar o spooler de impressão no Windows XP 
·Como configurar programas de inicialização no Windows…
·Como adicionar o espaço de troca no Linux (RedHat/Cent…
·Como inicializar a partir de uma partição 
·Como instalar o Avast Antivirus no Ubuntu 8.10 
·Macafee é um bom programa de segurança? 
·Como colocar fotos num computador de uma câmera digita…
·Como remover cookies de rastreamento no XP 
Cop e direita © Rede de conhecimento computador https://ptcomputador.com Todos os Direitos Reservados