Supongo que solo desea escanear la carpeta actual (y no todas las demás carpetas debajo de ella):
for rarfile in *.rar; do
unrar x "$rarfile"
done
Lo importante es poner el nombre del archivo en "" cuando se pasa a unrar
para evitar problemas con los espacios en el nombre.
Ahora, si desea tener esto como un script que puede ejecutar, puede hacer lo siguiente
cd ~
mkdir .bin
echo 'PATH=$PATH:$HOME/.bin' >> .profile
echo 'export PATH' >> .profile
. ./.profile
nano .bin/extract_all_rars
Esto le da un editor simple para archivos de texto, los comandos esenciales se muestran en la parte inferior. Tipo
#!/bin/bash
seguido del bloque de código en la parte superior, guarde el archivo y salga. Luego (en el shell de nuevo) escriba
chmod +x .bin/extract_all_rars
para marcarlo como ejecutable (para que el shell lo reconozca como un comando).
La eliminación automática tiene una advertencia: unrar
no devuelve un estado de error si las cosas van mal, por lo que puede perder sus archivos rar. Si esto no es un problema, agregue
rm -f "$rarfile" ${rarfile%%.rar}.r{0..9}{0..9}
después de que unrar
en el bucle anterior hará el trabajo. El segundo parámetro se usa para crear todos los sufijos .r04
posibles eliminando primero el sufijo ( ${rarfile%%.rar}
) y luego iterando de 0 a 9 dos veces para obtener todas las combinaciones posibles (ejecute echo foo{0..9}
en bash para ver cómo funciona) . Como la mayoría de estos nombres de archivos no existen, he agregado -f
como una opción para evitar mensajes de error.
Si está bastante seguro de que no hay otros archivos con un sufijo .rXX
en el mismo directorio, un simple
rm -${rarfile%%.rar}.r??
hace el truco también.
Si todavía no tienes rar
/ unrar
:
- Descargue RAROSX 4.2 de rarlab.com
- En el Finder, abra
~/Downloads
y haga doble clic en el archivo descargado para descomprimir. Se creará una carpeta rar
-
Abre la Terminal y ejecuta los siguientes comandos
cd ~/Downloads/rar
sudo install -d rar unrar /usr/local/bin
para instalar los binarios (ejecutables)
-
También debemos asegurarnos de que el shell encuentre los binarios
cd ~
echo 'PATH=$PATH:/usr/local/bin' >> .profile
echo 'export PATH' >> .profile
. ./.profile