Using perl Syntax Highlighting
opendir (DIR, $dir);
@contenido_directorio =readdir (DIR);
closedir (DIR);
if (-s $fich){ #$fich es un argumento que ya me han pasado
open (FICH,">>$fich");
@contenido_fichero = <FICH>; #PROBLEMA
foreach $elemento (@contenido_directorio){
$ruta = $dir."/".$elemento;
foreach $linea (@contenido_fichero){ #esto tampoco va
@campos = split / /, $linea;
$id = $campos[0];
$orden = chomp($campos[-1]);
if (-r $ruta && -x $ruta && !(-d $ruta)){
if($ruta eq $orden){
$id++;
$min = 0;
$mes = "*";
$dia_semana = "*";
print FICH "$id $min $hora $dia $mes $dia_semana $ruta\n";
}
}
}
}
}
else{
open (FICH,">$fich");
foreach $elemento (@contenido_directorio){
$ruta = $dir."/".$elemento;
if (-r $ruta && -x $ruta && !(-d $ruta)){
$id++;
$min = 0;
$mes = "*";
$dia_semana = "*";
print FICH "$id $min $hora $dia $mes $dia_semana $ruta\n";
}
}
}
@contenido_directorio =readdir (DIR);
closedir (DIR);
if (-s $fich){ #$fich es un argumento que ya me han pasado
open (FICH,">>$fich");
@contenido_fichero = <FICH>; #PROBLEMA
foreach $elemento (@contenido_directorio){
$ruta = $dir."/".$elemento;
foreach $linea (@contenido_fichero){ #esto tampoco va
@campos = split / /, $linea;
$id = $campos[0];
$orden = chomp($campos[-1]);
if (-r $ruta && -x $ruta && !(-d $ruta)){
if($ruta eq $orden){
$id++;
$min = 0;
$mes = "*";
$dia_semana = "*";
print FICH "$id $min $hora $dia $mes $dia_semana $ruta\n";
}
}
}
}
}
else{
open (FICH,">$fich");
foreach $elemento (@contenido_directorio){
$ruta = $dir."/".$elemento;
if (-r $ruta && -x $ruta && !(-d $ruta)){
$id++;
$min = 0;
$mes = "*";
$dia_semana = "*";
print FICH "$id $min $hora $dia $mes $dia_semana $ruta\n";
}
}
}
Coloreado en 0.003 segundos, usando GeSHi 1.0.8.4
Se trata que si el fichero no existe o se encuentra vacío, pues tengo que crearlo e introducir en el una línea por cada script que tenga el directorio, y si existe pues comprobar que el script no esté ya en el fichero y si no lo está pues introducir una linea en él. Creo que no me explicado muy bien.
Bueno mi problema es cuando realizo @contenido_fichero = <FICH> ya que este vector siempre me sale que está vacío cuando el fichero no lo está, y realmente no entiendo qué es lo que hago mal.
Espero que puedan ayudarme.
Muchas gracias de antemano.