Menu
CoddyTech

Organizador de Archivos por Tipo

Parte de la sección Fundamentos del Journey de Terminal de Coddy. Lección 80 de 82.

challenge icon

Desafío

Fácil

Crea un script de shell llamado organize.sh que organice los archivos en la carpeta downloads moviéndolos a subcarpetas basadas en sus extensiones de archivo.

Tu script debe:

  1. Comenzar con la línea shebang (#!/bin/bash)
  2. Recorrer todos los archivos en el directorio downloads
  3. Para cada archivo, extraer su extensión usando ${file##*.}
  4. Crear una carpeta para esa extensión dentro de downloads si no existe
  5. Mover el archivo a su carpeta de extensión correspondiente
  6. Imprimir Moved [filename] to [extension]/ para cada archivo movido

Haz el script ejecutable y ejecútalo. Tu salida debería ser:

Moved document.pdf to pdf/
Moved image.jpg to jpg/
Moved notes.txt to txt/
Moved photo.jpg to jpg/
Moved readme.txt to txt/
Moved report.pdf to pdf/
Moved song.mp3 to mp3/
Moved track.mp3 to mp3/

Después de ejecutar el script, verifica la organización listando la carpeta downloads con ls downloads. Deberías ver cuatro carpetas: jpg, mp3, pdf y txt.

Pista: Usa for file in downloads/*; do para recorrer los archivos. Dentro del bucle, extrae solo el nombre del archivo con basename "$file" y la extensión con ${file##*.}. Usa mkdir -p "downloads/$ext" para crear la carpeta y mv "$file" "downloads/$ext/" para mover el archivo.

Pruébalo tú mismo

Terminal

Todas las lecciones de Fundamentos

Practica por tu cuenta: Playground de Terminal