Reglas descomprimir archivos

Iniciado por Esgrimidor, 24 Junio 2010, 21:11 PM

0 Miembros y 1 Visitante están viendo este tema.

Esgrimidor

Reglas descomprimir archivos

Me interesa un buscador de archivos comprimidos (zip y rar fundamentalmente) que si localiza uno con una carpeta de contenido proceda a descomprimirse. Almacene la carpeta en el mismo directorio del comprimido y borre el archivo comprimido inicial.

Con el resto de comprimidos no tiene que hacer nada.

Conoces algún programa que sea capaz de hacer esto ?

Gracias

Shell Root

#1
Si lo pusiste en programación, pensé que era para codearlo. Podría ser algo así <Aunque falta mejorarlo>:
Código (php) [Seleccionar]
<?php /* #!/usr/bin/php */

function funBuscarArchivos($ruta){
if (is_dir($ruta)) {
if ($dh = opendir($ruta)) {
while (($file = readdir($dh)) !== false) {
if (is_dir($ruta . $file) && $file!="." && $file!=".."){
funBuscarArchivos($ruta . $file . "/");
}
if (is_file($ruta . $file)){
funBuscarArchivos($ruta . $file . "/");
if( (strtolower(funExtArchivo($ruta . $file)) == 'rar') || (strtolower(funExtArchivo($ruta . $file)) == 'zip') ){
funExtraer($ruta . $file, strtolower(funExtArchivo($ruta . $file)));
}
}
}
closedir($dh);
}
}
}

/* Función para extraer la extensión del archivo */
function funExtArchivo($ruta) {
$file = substr(strrchr($ruta, "."),1);
return $file;
}

/* Función para extraer */
function funExtraer($ruta, $tipo){
if( $tipo == 'rar' ){
system('rar x '. $ruta);
unlink($ruta);
return true;
}elseif( $tipo == 'zip' ){
system('unzip'. $ruta);
unlink($ruta);
return true;
}else{
return false;
}
}

funBuscarArchivos("./");

?>
Por eso no duermo, por si tras mi ventana hay un cuervo. Cuelgo de hilos sueltos sabiendo que hay veneno en el aire.

SerPan

Muchas gracias.
Lo miraré y te comentaré lo que no entienda.

Saludos cordiales