LinuxParty
Hay veces, que los administradores de Linux, los programadores, los editores de contenido, como pueden ser editores de imágenes o vídeos... necesitan trabajar con muchos ficheros... Cuando se trata de muchos ficheros, es mejor trabajar con ficheros que no tengan espacios ni caractereres extraños, porque es mejor para buscarlos, para copiarlos o moverlos a algún sitio.
Esto me llevó a hacer un script para poder trabajar con un script que no necesitara muchos interactuaciones para que funcionara bien. Por lo que el script hace un trabajo muy sencillo, le introduces el el nombre del fichero, y directamente te lo devuelve en el mismo directorio sin los caracteres extraños.
Vamos a proceder a poner el código fuente del script para que puedas verlo, después lo puedes colocar en:
/usr/local/bin
o
$HOME/bin
(tal vez tengas que crear el directorio bin
, para tal proceso)
Nombre del script: renombraquitandoespacios.sh
#!/bin/bash
# Nombre del script: renombraquitandoespacios.sh
# Obtenemos en la "$Entrada" el nombre del fichero a procesar Entrada="$1" echo " Entrada: -> $Entrada" # C AM B IA M O S espacio por - puntos por - ( por - ) por - [ por - ] por - Pre0=`echo "$Entrada" | sed s/' '/'-'/g | sed s/'\.'/'-'/g | sed s/'('/'-'/g | sed s/')'/'-'/g | sed s/'\['/'-'/g | sed s/'\]'/'-'/g` # Caracteres raros por elementos vacío. Pre1=`echo "$Pre0" | sed s/'!'/''/g | sed s/'¡'/''/g | sed s/'?'/''/g | sed s/'¿'/''/g | sed s/','/''/g | sed s/'='/'-'/g | sed s/"'"/""/g` # En PreSalida, debe estar la última entrada de "PreX", sea Pre0, Pre1, Pre2... PreSalida=$Pre1 # Comprobamos que el primer caracter no sea "-", y si lo es, lo eliminamos. firstchar=$(expr substr $PreSalida 1 1) if [ "$firstchar" == "-" ] ; then echo "Primer caracter:" $firstchar PreSalida=`echo $PreSalida | sed -e 's/^-/./'` fi # Sustituimos: -mp4 por .mp4 -mkv por .mkv -avi por .avi SalidaOK0=`echo "$PreSalida" | sed s/'-mp4'/'.mp4'/g | sed s/'-mkv'/'.mkv'/g | sed s/'-avi'/'.avi'/g` SalidaOK1=`echo "$SalidaOK0" | sed s/'-jpg'/'.jpg'/g | sed s/'-png'/'.png'/g | sed s/'-ico'/'.ico'/g` SalidaOK2=`echo "$SalidaOK1" | sed s/'-docx'/'.docx'/g | sed s/'-xlsx'/'.xlsx'/g | sed s/'-dbx'/'.dbx'/g` SalidaOK3=`echo "$SalidaOK2" | sed s/'-doc'/'.doc'/g | sed s/'-xls'/'.xls'/g | sed s/'-txt'/'.txt'/g` SalidaOK4=`echo "$SalidaOK3" | sed s/'-conf'/'.conf'/g | sed s/'-txt'/'.txt'/g | sed s/'-sh'/'.sh'/g` SalidaOK5=`echo "$SalidaOK4" | sed s/'-webm'/'.webm'/g | sed s/'-svg'/'.svg'/g | sed s/'-cpp'/'.cpp'/g` SalidaOK6=`echo "$SalidaOK5" | sed s/'-mpg'/'.mpg'/g | sed s/'-wmv'/'.wmv'/g | sed s/'-gif'/'.gif'/g` # Añada como Salida, la última entrada de "SalidaOK(X)" Salida=$SalidaOK6 echo "Salida: -> $Salida" mv -v "$Entrada" "$Salida"
El funcionamiento sería el siguiente:
[javier@localhost dwhelper]$ renombraquitandoespacios.sh \'Horizonte\'\ \(16062022\)\,\ completo\ y\ en\ HD.mp4
Entrada: -> 'Horizonte' (16062022), completo y en HD.mp4
Salida: -> Horizonte--16062022--completo-y-en-HD.mp4
renamed ''\''Horizonte'\'' (16062022), completo y en HD.mp4' -> 'Horizonte--16062022--completo-y-en-HD.mp4'

-
Software
- Top Ten de las innovaciones de Software Open Source.
- Real Player 11, graba todos los vídeos de Internet
- Reconocimiento Optico de Caracteres con Tesseract OCR en Ubuntu 7.04
- Cómo Instalar Linux en una PlayStation 3, (Colección de Manuales)
- GROUP-E, Software para la gestión de proyectos y trabajo en Grupo.
- Kazaa 5.0.0
- Cree un álbum de fotos con Project Zero & REST
- Instalar Ubuntu o Fedora, desde Windows.
- PDF es ahora la norma ISO 32000
- MikeOS 1.1 (Default)
- Necromancer's Dos Navigator el mejor clon del ''Norton Commander/Midnight Comman
- Usando LaTeX: Aspectos Básicos [parte I]