Tenho um diretório com vários arquivos, queria ler esses arquivos e caso contivesse dentro de um desses arquivos na linha 13 coluna 24 o conteúdo "System Error", gostaria de mover esse arquivo para um outro diretório.
Segue um script Python para realizar essa verificação movendo os arquivos:
import os
import shutil
# Diretórios de origem e de destino dos arquivos
diretorioArquivos = 'origem'
diretoriaDestino = 'destino'
for nomeArquivo in os.listdir(diretorioArquivos):
# Lendo as linhas do arquivo
linhas = [linha.rstrip('\n') for linha in open(diretorioArquivos+'/'+nomeArquivo)]
# 13o Linha do arquivo
linhaAnalizada = linhas[12]
# Verificando se existe 'System Error' nessa linha
if 'System Error' in linhaAnalizada:
# Movendo o arquivo
shutil.move(diretorioArquivos+'/'+nomeArquivo, diretoriaDestino+'/'+nomeArquivo)
print(f'{nomeArquivo} - Movido')
else:
print(f'{nomeArquivo} - Mantido')
Caso você não queira nenhuma mensagem de debug, utilize esse outro.
import os
import shutil
# Diretórios de origem e de destino dos arquivos
diretorioArquivos = 'origem'
diretoriaDestino = 'destino'
for nomeArquivo in os.listdir(diretorioArquivos):
# Lendo as linhas do arquivo
linhas = [linha.rstrip('\n') for linha in open(diretorioArquivos+'/'+nomeArquivo)]
# 13o Linha do arquivo
linhaAnalizada = linhas[12]
# Verificando se existe 'System Error' nessa linha
if 'System Error' in linhaAnalizada:
# Movendo o arquivo
shutil.move(diretorioArquivos+'/'+nomeArquivo, diretoriaDestino+'/'+nomeArquivo)
Abraço,
Diego M. Rodrigues
3. Re: Ler arquivo e transferir
Mauriciodezusa Debian
Post recolhido
Enviado em 20/06/2018 - 15:44h
manoel.junior escreveu:
Boa tarde pessoal, tudo bem?
Tenho um diretório com vários arquivos, queria ler esses arquivos e caso contivesse dentro de um desses arquivos na linha 13 coluna 24 o conteúdo "System Error", gostaria de mover esse arquivo para um outro diretório.
if [ "$txt" == "System Error" ]; then
mv $DIR/$x $DESTINO
else
echo "não contem >> $txt"
fi
done
NOTA: só não deu para testar pq estou no cel ... qualquer coisa da o grito aí !!
------------------------------------------| Linux User #621728 |-----------------------------------------
" Nem sempre é amigo aquele que te tira do buraco !!! ( Saddam Hussein )"
------------------------------------------| Linux User #621728 |-----------------------------------------
4. Re: Ler arquivo e transferir
msoliverusa Debian
Post recolhido
Enviado em 20/06/2018 - 21:32h
manoel.junior escreveu:
Boa tarde pessoal, tudo bem?
Tenho um diretório com vários arquivos, queria ler esses arquivos e caso contivesse dentro de um desses arquivos na linha 13 coluna 24 o conteúdo "System Error", gostaria de mover esse arquivo para um outro diretório.
Podem me ajudar nesse desenvolvimento?
Obrigado.
No comando "awk", adeque o separador ao utilizado no seu arquivo.
Marcelo Oliver
5. Re: Ler arquivo e transferir
manoel.juniorusa Red Hat
Post recolhido
Enviado em 22/06/2018 - 11:45h
Fala meu amigo msoliver, grande cara! Obrigado pela ajuda e gostaria de fazer mais um pedido nesse script. O usuário acabou de me informar que nessa linha 13 coluna 24 encontra-se o nome do arquivo que se tem que mover, eu pensei que era pra mover o próprio arquivo, mas ele quer mover o arquivo cujo nome está nessa linha e coluna. Como eu faria essa alteração com seu script?
No comando "awk", adeque o separador ao utilizado no seu arquivo.
Marcelo Oliver
6. Re: Ler arquivo e transferir
msoliverusa Debian
Post recolhido
Enviado em 22/06/2018 - 12:10h
manoel.junior escreveu:
Fala meu amigo msoliver, grande cara!
Obrigado pela ajuda e gostaria de fazer mais um pedido nesse script.
O usuário acabou de me informar que nessa linha 13 coluna 24 encontra-se o nome do arquivo que se tem que mover, eu pensei que era pra mover o próprio arquivo, mas ele quer mover o arquivo cujo nome está nessa linha e coluna.
Como eu faria essa alteração com seu script?
No comando "awk", adeque o separador ao utilizado no seu arquivo.
Marcelo Oliver
Boa tarde Manoel.
Vamos ver se entendi ...
Na coluna 24, tem o nome do arquivo que é para mover?
Isso em todas "LINHA 13" ?
O ARQUIVO em questão (LINHA13, COLUNA 24), tem uma extensão especifica ...?
marcelo oliver
7. Re: Ler arquivo e transferir
manoel.juniorusa Red Hat
Post recolhido
Enviado em 22/06/2018 - 12:15h
Boa tarde Manoel.
Vamos ver se entendi ...
Na coluna 24, tem o nome do arquivo que é para mover?
Isso em todas "LINHA 13" ?
O ARQUIVO em questão (LINHA13, COLUNA 24), tem uma extensão especifica ...?
marcelo oliver
Exato meu amigo. Tem uma extensão sim, são todos arquivos com a extensão TXT.
Obrigado pela ajuda.
8. Re: Ler arquivo e transferir
msoliverusa Debian
Post recolhido
Enviado em 22/06/2018 - 15:04h
manoel.junior escreveu:
Boa tarde Manoel.
Vamos ver se entendi ...
Na coluna 24, tem o nome do arquivo que é para mover?
Isso em todas "LINHA 13" ?
O ARQUIVO em questão (LINHA13, COLUNA 24), tem uma extensão especifica ...?
marcelo oliver
Exato meu amigo. Tem uma extensão sim, são todos arquivos com a extensão TXT.