Automatización de Directorios y Archivos

Automatización de Directorios y Archivos

1. Lenguaje C


#include <stdio.h>
#include <stdlib.h>
#include <sys/stat.h>
#include <sys/types.h>

int main() {
    // Crear directorios y subdirectorios
    mkdir("Directorio_Principal", 0777);
    mkdir("Directorio_Principal/Subdirectorio1", 0777);

    // Crear archivos con diferentes extensiones
    FILE *archivo1 = fopen("Directorio_Principal/Subdirectorio1/archivo.txt", "w");
    FILE *archivo2 = fopen("Directorio_Principal/Subdirectorio1/archivo.c", "w");
    
    if (archivo1 && archivo2) {
        fprintf(archivo1, "Contenido del archivo TXT\\n");
        fprintf(archivo2, "Contenido del archivo C\\n");
        fclose(archivo1);
        fclose(archivo2);
    } else {
        perror("Error al crear archivos");
    }

    return 0;
}
    

2. Lenguaje Ensamblador (NASM)


section .data
    directorio db "Directorio_Principal", 0
    subdirectorio db "Directorio_Principal/Subdirectorio1", 0
    archivo db "Directorio_Principal/Subdirectorio1/archivo.txt", 0

section .bss

section .text
global _start

_start:
    ; Crear directorio
    mov rax, 83         ; syscall mkdir
    mov rdi, directorio ; nombre del directorio
    mov rsi, 0777       ; permisos
    syscall

    ; Crear subdirectorio
    mov rax, 83
    mov rdi, subdirectorio
    mov rsi, 0777
    syscall

    ; Crear archivo
    mov rax, 2          ; syscall open
    mov rdi, archivo    ; nombre del archivo
    mov rsi, 66         ; O_CREAT | O_WRONLY
    mov rdx, 0777       ; permisos
    syscall

    ; Finalizar
    mov rax, 60         ; syscall exit
    xor rdi, rdi
    syscall
    

3. Lenguaje Java


import java.io.File;
import java.io.FileWriter;
import java.io.IOException;

public class AutomateFiles {
    public static void main(String[] args) {
        try {
            // Crear directorio y subdirectorio
            File dir = new File("Directorio_Principal");
            File subDir = new File("Directorio_Principal/Subdirectorio1");
            dir.mkdir();
            subDir.mkdir();

            // Crear archivos
            File archivoTxt = new File("Directorio_Principal/Subdirectorio1/archivo.txt");
            File archivoJava = new File("Directorio_Principal/Subdirectorio1/archivo.java");

            if (archivoTxt.createNewFile() && archivoJava.createNewFile()) {
                FileWriter writerTxt = new FileWriter(archivoTxt);
                writerTxt.write("Contenido del archivo TXT\\n");
                writerTxt.close();
                
                FileWriter writerJava = new FileWriter(archivoJava);
                writerJava.write("Contenido del archivo Java\\n");
                writerJava.close();
            }
        } catch (IOException e) {
            e.printStackTrace();
        }
    }
}
    

4. Lenguaje Python


import os

# Crear directorio y subdirectorio
os.makedirs("Directorio_Principal/Subdirectorio1", exist_ok=True)

# Crear archivos con diferentes extensiones
with open("Directorio_Principal/Subdirectorio1/archivo.txt", "w") as archivo_txt:
    archivo_txt.write("Contenido del archivo TXT\\n")

with open("Directorio_Principal/Subdirectorio1/archivo.py", "w") as archivo_py:
    archivo_py.write("Contenido del archivo Python\\n")
    

5. Lenguaje C++


#include <iostream>
#include <fstream>
#include <sys/stat.h>
#include <sys/types.h>

int main() {
    // Crear directorio y subdirectorio
    mkdir("Directorio_Principal", 0777);
    mkdir("Directorio_Principal/Subdirectorio1", 0777);

    // Crear archivos con diferentes extensiones
    std::ofstream archivoTxt("Directorio_Principal/Subdirectorio1/archivo.txt");
    std::ofstream archivoCpp("Directorio_Principal/Subdirectorio1/archivo.cpp");

    if (archivoTxt.is_open() && archivoCpp.is_open()) {
        archivoTxt << "Contenido del archivo TXT\\n";
        archivoCpp << "Contenido del archivo C++\\n";
        archivoTxt.close();
        archivoCpp.close();
    } else {
        std::cerr << "Error al crear archivos\\n";
    }

    return 0;
}
    

Destacado

Bootloader Avanzado en Ensamblador

Bootloader Avanzado en Ensamblador Características del Bootloader Se carga en la dirección 0x7C00 (BIOS). ...