move.pl
Publicado por Carlos Carvalho 14/07/2004
[ Hits: 5.585 ]
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
Script que procura uma palavra em um arquivo.
Conversão de textos UTF-8 para ISO8859-1
Inserindo sites em Lista do Squid
Nenhum comentário foi encontrado.
IA Turbina o Desktop Linux enquanto distros renovam forças
Como extrair chaves TOTP 2FA a partir de QRCODE (Google Authenticator)
Linux em 2025: Segurança prática para o usuário
Desktop Linux em alta: novos apps, distros e privacidade marcam o sábado
IA chega ao desktop e impulsiona produtividade no mundo Linux
Atualizando o Fedora 42 para 43
Como saber se o seu e-mail já teve a senha vazada?
Como descobrir se a sua senha já foi vazada na internet?
Secure boot, artigo interessante, nada técnico. (0)
Preciso recuperar videos *.mp4 corrompidos (1)
\Boot sem espaço em disco (Fedora KDE Plasma 42) (6)









