Recuerdo que existía un script que decía lo siguiente: te permitía mover los archivos en un directorio abriendo todas las rutas de todos los archivos en el directorio en un editor de texto; luego podías editar las rutas de los archivos en un editor de texto, y al salir de su editor de texto cambió el nombre de los archivos.
Parece que no puedo encontrar este script. ¿Alguien sabe cómo se llama? Creo que era parte de una colección de scripts de shell.
Respuesta1
vidir
le permite editar nombres de archivos en un editor de texto. Para elegir un editor, configure la EDITOR
variable. En Debian o Ubuntu vidir
está en el moreutils
paquete.
Esto es lo que vidir
puedo hacer (extracto de man 1 vidir
):
Al editar un directorio, cada elemento del directorio aparecerá en su propia línea numerada. Estos números son la forma
vidir
de realizar un seguimiento de los elementos que se modifican. Elimine líneas para eliminar archivos del directorio o edite nombres de archivos para cambiarles el nombre. También puedes cambiar pares de números para intercambiar nombres de archivos.
Dice "editar nombres de archivos para cambiarles el nombre", pero la herramienta puede hacer más. Al editar nombres de rutas completos, puede mover archivos a otros directorios, incluso a directorios que aún no existen ( vidir
intentaremos crearlos).
Después de editarlo, debe guardar el archivo de texto y salir elegantemente del editor, solo entonces vidir
hará su trabajo. vidir
no hará nada si no modifica el archivo (esto incluye guardarlo con otro nombre o en otra ubicación) o si el editor sale con error (es decir, con un estado de salida distinto de cero). Salir del editor sin guardar el archivo o hacer que el editor falle incluso después de guardar el archivo (ejemplo) son formas de abortar.
Si tiene miedo de que haya un nombre de ruta con tabulación o un carácter de nueva línea en algún lugar y esto rompa algo, entonces vidir
mantenga la calma. Hasta donde yo sé, vidir
en primer lugar, se negará a trabajar con ese nombre de ruta.
Ejemplos:
-
funciona en el contenido del directorio de trabajo actual pero no desciende a subdirectorios.vidir
-
trabaja en el contenido del directorio elegido pero no desciende a subdirectorios.vidir /chosen/directory
-
funciona en cualquier cosa quevidir *.mp3
*.mp3
se expanda. Esto puede resultar extraño si no hay ninguna coincidencia; ver el comienzo deesta respuesta. -
funciona con nombres de ruta proporcionados porfind . -type f | vidir -
find
lo que en general es una herramienta muy poderosa (ver "Teoría" enesta respuesta mía). La nota de forma predeterminadafind
desciende a subdirectorios. -
funcionaEDITOR=kate vidir …
vidir …
y utilizakate
como editor.