move.pl
Publicado por Carlos Carvalho 14/07/2004
[ Hits: 5.405 ]
Script em Perl que move arquivos acima de 1Mb para outro diretorio. Esse script foi feito por mim para uma funcionalidade especifica ,
no entanto, ele pode ser usado como um exemplo para seu uso.
#!/usr/bin/perl # Script que move arquivos maiores que 1 Mb # para outro diretorio. # # move.pl # carlos_lnx@ibest.com.br # use strict; # Verifica se PID existe: if (-e "/tmp/PID-longa") { my $pidi = `/bin/cat /tmp/PID-longa`; print("O programa nao pode ser executado, ja esta rodando com a PID = $pidi\n"); print("Deseja matar o processo numero $pidi ? [s/n] "); my $proc = <STDIN>; chop $proc; if ($proc eq "s") { system("/bin/kill -9 $pidi"); unlink("/tmp/PID-longa"); print("Killed!\n"); } exit(1); } # Vai pra background: print ("Estou em background...\n"); fork and exit; # Cria arquivo com a PID do processo para futura verificacao: my $child = $$; open(FIL, ">/tmp/PID-longa") or die "NAO FOI POSSIVEL ESCREVER NO DIRETORIO /tmp, $!"; print(FIL "$child"); close(FIL); while (true) { # Recebe listagem de /u1/titan-prt/prt_laser_1: my @arquivos = `/bin/ls /u1/titan-prt/prt_laser_1` ; foreach (@arquivos) { # Retira ultimo caractere (enter): chop $_; # Verifica tamanho do arquivo com precisao: my $size = -s "/u1/titan-prt/prt_laser_1/$_"; # Move arquivo caso ele seja >= 1048576, 1 MegaByte senao imprime: if ($size >= 1048576) { system("/bin/mv /u1/titan-prt/prt_laser_1/$_ /u1/titan-prt/prt_longa/") } else { system("/etc/lprint /u1/titan-prt/prt_laser_1/$_"); unlink("/u1/titan-prt/prt_laser_1/$_") or die "$!"; } } # Dorme por um segundo: sleep(1); } #EOF
Listar arquivos de um diretório.
Script que procura uma palavra em um arquivo.
Script que remove palavras de um arquivo.
Nenhum comentário foi encontrado.
Compartilhando a tela do Computador no Celular via Deskreen
Como Configurar um Túnel SSH Reverso para Acessar Sua Máquina Local a Partir de uma Máquina Remota
Configuração para desligamento automatizado de Computadores em um Ambiente Comercial
Como renomear arquivos de letras maiúsculas para minúsculas
Imprimindo no formato livreto no Linux
Vim - incrementando números em substituição
Efeito "livro" em arquivos PDF
Como resolver o erro no CUPS: Unable to get list of printer drivers
Não to conseguindo resolver este problemas ao instalar o playonelinux (1)
Excluir banco de dados no xampp (1)
[Python] Automação de scan de vulnerabilidades
[Python] Script para analise de superficie de ataque
[Shell Script] Novo script para redimensionar, rotacionar, converter e espelhar arquivos de imagem
[Shell Script] Iniciador de DOOM (DSDA-DOOM, Doom Retro ou Woof!)
[Shell Script] Script para adicionar bordas às imagens de uma pasta