OSX/IOS

Cómo cambiar las extensiones de archivo en la línea de comando en Mac OS

Puede cambiar fácilmente todas las extensiones de archivo en un directorio a través de Terminal a macOS

Los usuarios de la línea de comandos pueden encontrar útil cambiar y renombrar la extensión de archivo de un grupo de archivos en un directorio. Por ejemplo, suponga que tiene un lote de archivos con la extensión de archivo «.txt», pero desea que todas estas extensiones de archivo sean «.py». Lo demostraremos aquí, basándonos en scripts bash simples para cambiar un grupo de extensiones de archivo en la línea de comandos de Mac OS / OS X, pero esto también funcionará en Linux y otras versiones de Unix.


Antes de comenzar, se da cuenta de que esto no cambia un tipo de archivo, solo cambia la extensión del archivo. Además, este enfoque general utiliza intencionalmente la línea de comandos y, por lo tanto, se dirige a usuarios más avanzados. Sin embargo, Terminal no es la única forma de hacer esto y, por lo tanto, si esto es demasiado avanzado o irrelevante para su conjunto de habilidades de usuario, recuerde que Mac OS proporciona herramientas simples tanto para el cambio de nombre de archivos por lotes en Mac OS como para las extensiones de archivo. para el cambio de lote También Finder, que no requiere la línea de comando en absoluto. ¿BIEN? A continuación, acérquese a la línea de comandos utilizando un sencillo script bash.

Por cierto, siempre debes hacer una copia de seguridad y / o hacer una copia de seguridad de los archivos que editas, especialmente si eres nuevo en la línea de comandos. El no hacerlo puede resultar en la pérdida de datos, la Terminal no perdona errores ni errores, así que no omita las copias de seguridad.

Cómo cambiar todas las extensiones de archivo en un directorio a través de la línea de comando

Tomemos algunos ejemplos. En el primer ejemplo, cambiaremos todos los archivos del directorio de trabajo actual con la extensión «.txt» y los cambiaremos a «.py». Suponiendo que se encuentra en el directorio donde desea cambiar todos los archivos del directorio actual a una nueva extensión de archivo, esta es la sintaxis que debe utilizar:

for file in *.txt; do mv "$file" "${file%.txt}.py"; done

Tenga en cuenta que esto usa el carácter *, lo que significa que se cambiará cualquier cosa en el directorio actual que corresponda a la extensión de archivo «* .txt». También tenga en cuenta las múltiples instancias de «txt» y la única instancia de «py» que le gustaría modificar para satisfacer sus necesidades.

Todo lo que hace es crear un bucle simple en el que encontrar los archivos que coinciden con el carácter original y la extensión del archivo, luego ejecutar el comando «mv» para mover (renombrar) esos archivos de la extensión del archivo original al reemplazo. Bastante simple, ¿verdad?

Tomemos otro ejemplo, supongamos que tenemos una colección de archivos de imagen en el directorio actual con nombres de archivo como «blahblah.jpg.JPEG», pero realmente queremos que tenga el mismo nombre de archivo con la lectura menos redundante y más fácil «Blazblah. jpeg «. En este caso, la sintaxis se vería así:

for file in *.jpg.JPEG; do mv "$file" "${file%.jpg.JPEG}.jpeg"; done

El enfoque de la línea de comandos para cambiar las extensiones de archivo es bastante rápido y las extensiones de archivo se cambiarán rápidamente, sin diálogos de advertencia o confirmaciones.

Y para repetirlo, esto no significa convertir ningún tipo de archivo o cambiar nada más que el nombre de la extensión del archivo.

¿Conoce una mejor manera de cambiar un montón de extensiones de archivo en un directorio a través de la línea de comandos? ¿Solo quieres ver otros excelentes consejos sobre la línea de comandos (ve aquí)? ¡Cuéntanos tu opinión en los comentarios!

Publicaciones relacionadas

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Botón volver arriba
Cerrar