Spaces:
Running
Running
# Verificar si se pasó un archivo como parámetro | |
if [ -z "$1" ]; then | |
echo "Uso: $0 archivo_de_entrada" | |
exit 1 | |
fi | |
archivo_entrada="$1" | |
# Verificar si el archivo existe | |
if [ ! -f "$archivo_entrada" ]; then | |
echo "El archivo $archivo_entrada no existe." | |
exit 0 | |
fi | |
files=$(cat "$archivo_entrada") | |
# Leer el archivo línea por línea | |
for linea in $files; do | |
nombre=$(echo "$linea" | cut -d ":" -f1) | |
echo "Recuperando $nombre" | |
valor=$(echo "$linea" | cut -d ":" -f2) | |
# Crear el directorio si no existe | |
dir=$(dirname "$nombre") | |
mkdir -p "$dir" | |
chmod 777 "$dir" | |
# Crear el archivo con el contenido adecuado | |
if [ -z "$valor" ]; then | |
# Si el valor está vacío, crear un archivo vacío | |
touch "$nombre" | |
else | |
# Si el valor no está vacío, decodificarlo de base64 y escribirlo en el archivo | |
echo "$valor" | base64 --decode > "$nombre" | |
fi | |
chmod 777 $nombre | |
done | |