hbackup.pl
Publicado por Hatus Níwman 24/08/2006
[ Hits: 5.836 ]
Homepage: http://hatus.analyx.org
Faz um backup de arquivos cujos caminhos estão em um arquivo texto.
#!/usr/bin/perl # backup-0.1.pl # 2006-05-17 v0.1 # # Autor: Hatus Niwman # Email: hatus (a) yahoo com br # Site: http://xhatus.cjb.net # # Faz o backup de arquivos listados # no arquivo $LISTA # # OBS: colocar endereço completo do arquivo # a ser salvo na lista. # Ex.: /root/doc/prog/teste.txt use strict; # arquivo onde contem os endereços do arquivo a ser salvo my $LISTA = "/root/lista-backup.dat"; my($opt,$endereco,$conf); # configurando a data do backup my %mes=(Jan => '01',Feb => '02',Mar => '03',Apr => '04',May => '05', Jun => '06',Jul => '07',Ago => '08',Sep => '09',Oct => '10', Nov => '11',Dec => '12'); my @time = split(" ",localtime()); my $data = "$time[4]$mes{$time[1]}$time[2]"; my $nome = "backup-$data"; ## dir de backup my $dir_save = "/tmp"; ## dir onde será salvo o dir de backup my $dir ="$dir_save/$nome"; ## dir onde contem os arquivos para salvar print "Fazer backup dos arquivos? [y/n]: "; chomp($conf = <STDIN>); if ($conf=~/^[nN]$/){ print "\nBackup cancelado!\n"; exit(0); } else { print "\n" }; if ($< != 0){ print "Somente root tem permissão para fazer o backup.\n"; exit(0); } # cria $dir se nao existir if (! -d $dir) { system("mkdir $dir"); } #verifica se a $LISTA existe if (! -f $LISTA) { print "$LISTA não existe!\n"; exit(0); } open(ARQ,"<$LISTA") or die "Erro!!!"; while(my $endereco = <ARQ>){ chop($endereco); if(-d "$endereco"){ $opt = "-R"; } else { $opt=""; } if($endereco=~/^\//g){ print "Salvando $endereco\n"; system("/bin/cp $opt $endereco $dir"); } else { print "ERRO: Nao foi possível salvar $endereco\n"; } } close(ARQ); print "\nCompactando $dir ...\n"; system("cd $dir_save && /bin/tar cfz $nome.tar.gz $nome"); print "\nBackup salvo em $dir.tar.gz\n"; print "Backup concluído!\n"; #EOF
R4$T4 Scan - Portscan básico comentado
Zend Framework application.ini vulnerability exploit
Nenhum comentário foi encontrado.
Como compartilhar a tela do Ubuntu com uma Smart TV (LG, Samsung, etc.)
Descritores de Arquivos e Swappiness
tux-gpt - Assistente de IA para o Terminal
Instalação e configuração do Chrony
Programa IRPF - Guia de Instalação e Resolução de alguns Problemas
Como instalar no Linux Jogos da Steam só para Windows
Instalando o Team Viewer no Debian Trixie - problema no Policykit
O Que Fazer Após Instalar Ubuntu 25.04
Erro ao atualizar o archlinux (1)
Erro ao executar o comando para dar um get email (0)