Soy nuevo en el foro y recién comienzo a programar en Perl.
Les cuento tengo que hacer un programa que respalde archivos .pl dentro de un directorio en particular ingresado por el usuario al igual que el directorio donde quedarán los respaldos.
El problema mayor que tengo es que no me funciona la copia, para lo cual estoy utilizando el comando system("cp $_ $dir_destino);
He intentado con el módulo File::Copy, pero me da un error y no sé cómo resolverlo.
Adjunto archivo con el código, por favor ¡¡¡ayudaaaaaaaaaaa!!!
Gracias.
Using perl Syntax Highlighting
- #!/usr/bin/perl
- #file name: tarea2.pl
- use strict vars;
- #use File::Copy;
- my ($dir_origen, $dir_destino, @files, $resul,$copy);
- print ("Ingrese directorio/ruta a respaldar:");
- $dir_origen=<STDIN>;
- chomp ($dir_origen);
- print ("Ingrese directorio/ruta de destino del respaldo:");
- $dir_destino=<STDIN>;
- chomp ($dir_destino);
- if (lc($dir_origen) eq lc($dir_destino))
- {
- print ("El dir. de origen de respaldo no puede ser igual dir. de destino\n");
- exit;
- }
- if (-e $dir_destino)
- {
- #system("find $dir_origen -name *.pl > /filesok.txt");
- $resul=`find $dir_origen -name "*.pl" > filesok.txt`;
- open(INFILE, "filesok.txt");
- while (<INFILE>){
- #file::copy::copy ($_, $dir_destino\$copy_Date);
- system("cp $_ $dir_destino");
- }
- }
- else
- {
- print("Directorio no existe\n");
- }
Coloreado en 0.002 segundos, usando GeSHi 1.0.8.4