BandaAncha.eu

Comunidad de usuarios
de fibra, móvil y ADSL

Descomprimir RAR en comandos con carpeta con nombre del RAR

Serakon

La verdad que ando perdido para descomprimir de la forma que quiero hacerlo, que es como cuando marcas en la interfaz gráfica "Extraer en subcarpetas" (que descomprime contenido en una carpeta con el nombre del fichero RAR) y "No extraer rutas" (Todo el contenido a la carpeta tal cual).

Pero aquí en comandos ni se si usar un E un X... o si acaso es posible desde comandos lo que digo, o si tendría que hacerme un script para las carpetas con el nombre del RAR y luego descomprimir ahi... pero si usara un rar x me descomprimiría también las rutas del fichero RAR, no se si el -ep1 hace justo eso ultimo...

winrar.es/soporte/manual/HELPCommandLineSyntax

BocaDePez
BocaDePez

"unrar" es un comando muy limitado. Te recomiendo que te bajes en su lugar 7zip (p7zip-full en Debian) y uses "man 7z" y te lo leas.

🗨️ 4
Serakon

No hablo de hacerlo con unrar, si no con el winrar.

Y mas o menos creo que se puede hacer pero no se me ocurre, hace años usaba 7z pero... tuve peores resultados.

🗨️ 3
BocaDePez
BocaDePez

Lo has puesto en el foro de Linux o sea que no sé qué respuestas esperas... pues una respuesta para Linux.

Tampoco sé qué quieres decir con "peores resultados".

En fin, tú verás.

🗨️ 2
pepejil
BocaDePez
BocaDePez

mkdir dirname && cd dirname && unrar ../dirname.rar

No es muuuu complicao... La próxima vez, a la hora de crearlo, asegurate que el paquete contenga el directorio.

🗨️ 3
Serakon

No es para un solo fichero, es para que lo ejecute sobre mas de 700, un unico comando.

🗨️ 2
BocaDePez
BocaDePez
1

for i in *.rar; do 7z x -ocarpeta_$i $i; done

🗨️ 1
Serakon

Gracias, pero el p7zip que tenia es version 9 y mis ficheros son RAR5 por lo que necesito de las ultimas versiones y parece que en Debian8 almenos no esta desde el repositorio base, como me pareció complicado actualizar me hice un script y que me funciono.

DIR=/home/serakon/c5

cd $DIR

for i in *.rar

do

u=${i//.rar/};

mkdir $u

cd ./$u

rar x -ep $DIR/$i

cd $DIR

done
pepejil

WinRAR no existe en Linux.

BocaDePez
BocaDePez

¿Has probado esto?:

$ for FILE in *.rar; do rar e "$FILE" "${FILE/%.rar//}"; done
🗨️ 1
Serakon

Acabo de probar con uno y funciona perfecto muchas gracias, luego probare con múltiples cuando pueda a ver que tal.

Gracias.