Gracias Gracias:  0
Me Gusta Me Gusta:  0
No me Gusta No me Gusta:  0
Mostrando resultados del 1 al 10 de 10

Tema: Script bash para crear varias carpetas de una sola vez

  1. #1
    Fecha de Ingreso
    25-marzo-2013
    Mensajes
    26
    Post Thanks / Like
    Poder de Credibilidad
    0

    Arrow Script bash para crear varias carpetas de una sola vez

    Hola, soy nuevo en el foro, y he estado teniendo unos cuántos problemas con un script que he estado haciendo en bash.

    La idea principal del script es que cree cualquier clase de archivos en las carpetas del directorio home, eso ya lo hice, pero sólo crea una archivo; entonces se me vino la idea de agregarle una opción en la que se pudieran crear varios archivos de "un solo tiro"... lo primero que quiero hacer es usar las llaves para crear archivos numerados, es decir:

    quiero crear 6 txt llamados texto1, texto2... hasta texto6, para esto sé que debo
    hacer esto: touch texto{1..6}.txt ... pero en el script les doy la opción de elegir el nombre de los archivos ("texto" en este caso), y de qué número, a qué número quisieran crearlo, almacenando esos datos con read,mas o menos así:


    clear && echo -n "¿Cuál quisiera que fuera el nombre principal de su bloque de archivos?: "
    read nomprin1
    clear && echo -n "¿Desde qué número quisiera usted que se creen los archivos?: "
    read inicio1
    echo -n "¿Hasta qué número quiere que se creen los archivos?: "
    read final1
    clear && touch $nomprin1{${inicio1}..${final1}}.txt
    Entonces si:

    $nomprin1=texto
    $inicio1=1
    $final1=6
    debería crear:
    texto1.txt texto2.txt ... hasta texto6.txt

    pero en vez de eso crea sólo un archivo de texto llamado:
    texto{1..6}.txt

    Mi pregunta es ¿qué estoy haciendo mal, por qué no se crean la cantidad de archivos indicados si está bien el formato?










    ÉSTE ES EL CÓDIGO DE FUENTE DEL SCRIPT:


    #!/bin/bash
    clear
    if [ "$1" = "help" ]
    then
    echo "\------------------INDICACIONES PARA USAR TEXTUALFILEMAKER-------------------------------/"
    echo "*Este es un script diseñado para crear varios tipos de archivo usando el shell, el cual"
    echo " Está escrito en bash."
    echo
    echo "*(En el selector) el nombre del formato debe estar escrito en minúsculas,"
    echo " puede llevar un punto al frente... o no."
    echo
    echo "*Las carpetas (Descargas, Documentos, Escritorio, Imágenes, Música, Videos)"
    echo "deben estar escritas empezando por mayúsucula, si no, el programa hara loop."
    echo
    echo
    echo
    echo " -g Modo de creación avanzada"
    echo
    echo
    echo
    elif [ "$1" != "help" ]
    then
    shopt -s "extglob"
    #CABECERA
    echo "<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>>>"
    echo "======================BIENVENIDO A TEXTUALFILEMAKER======================"
    echo "========================CREADO POR DANIEL BONILLA========================"
    echo "===============SCRIPT PARA CREAR CARPETAS Y ARCHIVOS====================="
    echo "<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<>>>>>>>>>>>>>>> >>>>>>>>>>>>>>>>>>>>>>>>"
    echo "THE BASH VERSION THOU ART USING : $BASH_VERSION"
    echo
    echo
    echo "Recuerde la opción -g para entrar en"
    echo "el modo de creación por bloques."
    echo
    echo
    echo -n "Presione cualquier tecla para comenzar."
    read
    echo
    echo
    #FIN CABECERA
    #VARIABLES
    #descargas=clear && cd ~/Descargas
    #documentos=clear && cd ~/Documentos
    #escritorio=clear && cd ~/Escritorio
    #imagenes=clear && cd ~/Imágenes
    #musica=clear && cd ~/Música
    #videos=clear && cd ~/Vídeos
    if [ "$1" = "-g" ]
    then
    clear && echo "\--------------------CREACION DE ARCHIVO POR BLOQUES (-g)--------"
    echo "Usted ha ingresado la opción -g, por ende, "
    echo "ha entrado en el modo de creación de archivos por bloques."
    echo "Este modo es ideal para cuándo se necesiten crear "
    echo "varios archivos, dando distintas opciones:"
    echo
    echo "-Por patrones númericos: Por ejemplo, si quiere crear 4 archivos,"
    echo "llamados 'saldo' y además les quiere poner"
    echo "a cada uno, un número (saldo1, saldo2, saldo3, saldo4),"
    echo "ésta es la opción ideal."
    echo
    echo "-Por patrones alfabéticos: Por ejemplo, si quiere crear 4 archivos"
    echo "llamados 'cuentas' y además les quiere poner"
    echo "a cada uno una letra (cuentas a, cuentas b, cuentas c...),"
    echo "ésta es su opción"
    echo
    echo "-Uno a uno: si lo que desea es crear varios archivos que no tengan"
    echo "relación entre sí (sólo su formato), ésta es la opción ideal."
    echo
    echo "--------------------------------------------------------------------------"
    echo "Ahora, elija cuál opción de las mencionadas arriba quisiera usar:"
    echo
    echo "1) Por patrones numéricos"
    echo "2) Por patrones alfabéticos"
    echo "3) Uno a uno"
    echo
    echo -n "Introduzca el número (1,2,3): "
    read modo
    case $modo in
    #MODO 1
    1)
    until [ "$respuesta1" = ".txt" ] || [ "$respuesta1" = "txt" ] || [ "$respuesta1" = ".sh" ] || [ "$respuesta1" = "sh" ] || [ "$respuesta1" = "Carpeta" ] || [ "$respuesta1" = "carpeta" ] || [ "$respuesta1" = ".html" ] || [ "$respuesta1" = "html" ] || [ "$respuesta1" = ".ods" ] || [ "$respuesta1" = "ods" ] || [ "$respuesta1" = ".odt" ] || [ "$respuesta1" = "odt" ] || [ "$respuesta1" = "odg" ] || [ "$respuesta1" = ".odg" ] || [ "$respuesta1" = "odp" ] || [ "$respuesta1" = ".odp" ]
    do
    clear && echo -n "¿Qué tipo de archivos desea crear? (.txt, .sh, carpeta, .html, .ods, .odt, .odg, .odp): "
    read respuesta1
    done
    case $respuesta1 in
    .txt|txt)
    until [ "$directorio1" = "Descargas" ] || [ "$directorio1" = "Documentos" ] || [ "$directorio1" = "Escritorio" ] || [ "$directorio1" = "Imágenes" ] || [ "$directorio1" = "Imagenes" ] || [ "$directorio1" = "Música" ] || [ "$directorio1" = "Musica" ] || [ "$directorio1" = "Videos" ] || [ "$directorio1" = "Vídeos" ]
    do
    clear && echo -n "¿En qué carpeta desea crear los documentos de texto? (Descargas, Documentos, Escritorio, Imágenes, Música, Videos): "
    read directorio1
    done
    case $directorio1 in
    Descargas)
    clear && cd ~/Descargas;;
    Documentos)
    clear && cd ~/Documentos;;
    Escritorio)
    clear && cd ~/Escritorio;;
    Imágenes|Imagenes)
    clear && cd ~/Imágenes;;
    Música|Musica)
    clear && cd ~/Música;;
    Videos|Vídeos)
    clear && cd ~/Vídeos;;
    esac
    clear && echo -n "¿Cuál quisiera que fuera el nombre principal de su bloque de archivos?: "
    read nomprin1
    clear && echo -n "¿Desde qué número quisiera usted que se creen los archivos?: "
    read inicio1
    echo -n "¿Hasta qué número quiere que se creen los archivos?: "
    read final1
    clear && touch $nomprin1{${inicio1}..${final1}}.txt
    esac
    #FINMODO1
    esac
    elif [ "$1" != "-g" ]
    then
    #MODO NORMAL
    until [ "$respuesta" = ".txt" ] || [ "$respuesta" = "txt" ] || [ "$respuesta" = ".sh" ] || [ "$respuesta" = "sh" ] || [ "$respuesta" = "Carpeta" ] || [ "$respuesta" = "carpeta" ] || [ "$respuesta" = ".html" ] || [ "$respuesta" = "html" ] || [ "$respuesta" = ".ods" ] || [ "$respuesta" = "ods" ] || [ "$respuesta" = ".odt" ] || [ "$respuesta" = "odt" ] || [ "$respuesta" = "odg" ] || [ "$respuesta" = ".odg" ] || [ "$respuesta" = "odp" ] || [ "$respuesta" = ".odp" ]
    do
    clear && echo -n "¿Qué tipo de archivo desea crear? (.txt, .sh, carpeta, .html, .ods, .odt, .odg, .odp): "
    read respuesta
    done
    case $respuesta in
    .txt|txt)
    until [ "$directorio" = "Descargas" ] || [ "$directorio" = "Documentos" ] || [ "$directorio" = "Escritorio" ] || [ "$directorio" = "Imágenes" ] || [ "$directorio" = "Imagenes" ] || [ "$directorio" = "Música" ] || [ "$directorio" = "Musica" ] || [ "$directorio" = "Videos" ] || [ "$directorio" = "Vídeos" ]
    do
    clear && echo -n "¿En qué carpeta desea crear el documento de texto? (Descargas, Documentos, Escritorio, Imágenes, Música, Videos): "
    read directorio
    done
    case $directorio in
    Descargas)
    clear && cd ~/Descargas;;
    Documentos)
    clear && cd ~/Documentos;;
    Escritorio)
    clear && cd ~/Escritorio;;
    Imágenes|Imagenes)
    clear && cd ~/Imágenes;;
    Música|Musica)
    clear && cd ~/Música;;
    Videos|Vídeos)
    clear && cd ~/Vídeos;;
    esac
    echo -n "¿Cómo quisiera llamar el archivo de texto?: "
    read nombre
    touch "$nombre.txt" && echo "---->El archivo "$nombre.txt" ha sido creado exitosamente (--touch)" && exit
    esac
    case $respuesta in
    .sh|sh)
    until [ "$directorio2" = "Descargas" ] || [ "$directorio2" = "Documentos" ] || [ "$directorio2" = "Escritorio" ] || [ "$directorio2" = "Imágenes" ] || [ "$directorio2" = "Imagenes" ] || [ "$directorio2" = "Música" ] || [ "$directorio2" = "Musica" ] || [ "$directorio2" = "Videos" ] || [ "$directorio2" = "Vídeos" ]
    do
    clear && echo -n "¿En qué carpeta desea crear el script bash (Descargas, Documentos, Escritorio, Imágenes, Música, Videos)?: "
    read directorio2
    done
    case $directorio2 in
    Descargas)
    clear && cd ~/Descargas;;
    Documentos)
    clear && cd ~/Documentos;;
    Escritorio)
    clear && cd ~/Escritorio;;
    Imágenes|Imagenes)
    clear && cd ~/Imágenes;;
    Música)
    clear && cd ~/Música;;
    Videos|Vídeos)
    clear && cd ~/Vídeos;;
    esac
    echo -n "¿Cómo quisiera llamar el archivo sh?: "
    read nombre2
    touch "$nombre2.sh"
    echo "Introduzca la contraseña para que a '$nombre2.sh' le sean dados permisos de ejecución"
    sudo chmod +x "$nombre2.sh" && echo "---->El archivo "$nombre2.sh" ha sido creado exitosamente (-- touch) y se le han dado permisos de ejecución (-- chmod)"
    exit
    esac
    case $respuesta in
    carpeta|Carpeta)
    until [ "$directorio3" = "Descargas" ] || [ "$directorio3" = "Documentos" ] || [ "$directorio3" = "Escritorio" ] || [ "$directorio3" = "Imágenes" ] || [ "$directorio3" = "Imagenes" ] || [ "$directorio3" = "Música" ] || [ "$directorio3" = "Musica" ] || [ "$directorio3" = "Videos" ] || [ "$directorio3" = "Vídeos" ]
    do
    clear && echo -n "¿En qué directorio desea crear la carpeta (Descargas, Documentos, Escritorio, Imágenes, Música, Videos)?: "
    read directorio3
    done
    case $directorio3 in
    Descargas)
    clear && cd ~/Descargas;;
    Documentos)
    clear && cd ~/Documentos;;
    Escritorio)
    clear && cd ~/Escritorio;;
    Imágenes|Imagenes)
    clear && cd ~/Imágenes;;
    Música)
    clear && cd ~/Música;;
    Videos|Vídeos)
    clear && cd ~/Vídeos;;
    esac
    echo -n "Cómo quisiera llamar la carpeta?: "
    read nombre3
    mkdir "$nombre3" && echo "---->La carpeta $nombre3 ha sido creada exitosamente (-- mkdir)."
    exit
    esac
    case $respuesta in
    .html|html)
    until [ "$directorio4" = "Descargas" ] || [ "$directorio4" = "Documentos" ] || [ "$directorio4" = "Escritorio" ] || [ "$directorio4" = "Imágenes" ] || [ "$directorio4" = "Imagenes" ] || [ "$directorio4" = "Música" ] || [ "$directorio4" = "Musica" ] || [ "$directorio4" = "Videos" ] || [ "$directorio4" = "Vídeos" ]
    do
    clear && echo -n "¿En qué directorio desea crear el archivo html (Descargas, Documentos, Escritorio, Imágenes, Música, Videos)?: "
    read directorio4
    done
    case $directorio4 in
    Descargas)
    clear && cd ~/Descargas;;
    Documentos)
    clear && cd ~/Documentos;;
    Escritorio)
    clear && cd ~/Escritorio;;
    Imágenes|Imagenes)
    clear && cd ~/Imágenes;;
    Música)
    clear && cd ~/Música;;
    Videos|Vídeos)
    clear && cd ~/Vídeos;;
    esac
    echo -n "¿Cómo quisiera llamar el archivo html?"
    read nombre4
    touch "$nombre4.html" && echo "---->El archivo '$nombre4.html' ha sido creado exitosamente (-- touch)"
    exit
    esac
    case $respuesta in
    .ods|ods)
    until [ "$directorio5" = "Descargas" ] || [ "$directorio5" = "Documentos" ] || [ "$directorio5" = "Escritorio" ] || [ "$directorio5" = "Imágenes" ] || [ "$directorio5" = "Imagenes" ] || [ "$directorio5" = "Música" ] || [ "$directorio5" = "Musica" ] || [ "$directorio5" = "Videos" ] || [ "$directorio5" = "Vídeos" ]
    do
    clear && echo -n "¿En qué carpeta desea crear el documento de LibreOffice Calc (Descargas, Documentos, Escritorio, Imágenes, Música, Videos)?: "
    read directorio5
    done
    case $directorio5 in
    Descargas)
    clear && cd ~/Descargas;;
    Documentos)
    clear && cd ~/Documentos;;
    Escritorio)
    clear && cd ~/Escritorio;;
    Imágenes|Imagenes)
    clear && cd ~/Imágenes;;
    Música)
    clear && cd ~/Música;;
    Videos|Vídeos)
    clear && cd ~/Vídeos;;
    esac
    echo -n "¿Cómo quisiera llamar el archivo de LibreOffice Calc?: "
    read nombre5
    touch "$nombre5.ods" && echo "---->El archivo '$nombre5.ods' ha sido creado exitosamente (-- touch)"
    exit
    esac
    case $respuesta in
    odt|.odt)
    until [ "$directorio6" = "Descargas" ] || [ "$directorio6" = "Documentos" ] || [ "$directorio6" = "Escritorio" ] || [ "$directorio6" = "Imágenes" ] || [ "$directorio6" = "Imagenes" ] || [ "$directorio6" = "Música" ] || [ "$directorio6" = "Musica" ] || [ "$directorio6" = "Videos" ] || [ "$directorio6" = "Vídeos" ]
    do
    clear && echo -n "¿En qué carpeta desea crear el documento de LibreOffice Writer (Descargas, Documentos, Escritorio, Imágenes, Música, Videos)?: "
    read directorio6
    done
    case $directorio6 in
    Descargas)
    clear && cd ~/Descargas;;
    Documentos)
    clear && cd ~/Documentos;;
    Escritorio)
    clear && cd ~/Escritorio;;
    Imágenes|Imagenes)
    clear && cd ~/Imágenes;;
    Música)
    clear && cd ~/Música;;
    Videos|Vídeos)
    clear && cd ~/Vídeos;;
    esac
    echo -n "¿Cómo quisiera llamar el archivo de LibreOffice Writer?: "
    read nombre6
    touch "$nombre6.odt" && echo "---->El archivo '$nombre6.odt' ha sido creado exitosamente (-- touch)"
    exit
    esac
    case $respuesta in
    odp|.odp)
    until [ "$directorio7" = "Descargas" ] || [ "$directorio7" = "Documentos" ] || [ "$directorio7" = "Escritorio" ] || [ "$directorio7" = "Imágenes" ] || [ "$directorio7" = "Imagenes" ] || [ "$directorio7" = "Música" ] || [ "$directorio7" = "Musica" ] || [ "$directorio7" = "Videos" ] || [ "$directorio7" = "Vídeos" ]
    do
    clear && echo -n "¿En qué carpeta desea crear el documento de LibreOffice Impress (Descargas, Documentos, Escritorio, Imágenes, Música, Videos)?: "
    read directorio7
    done
    case $directorio7 in
    Descargas)
    clear && cd ~/Descargas;;
    Documentos)
    clear && cd ~/Documentos;;
    Escritorio)
    clear && cd ~/Escritorio;;
    Imágenes|Imagenes)
    clear && cd ~/Imágenes;;
    Música)
    clear && cd ~/Música;;
    Videos|Vídeos)
    clear && cd ~/Vídeos;;
    esac
    echo -n "Cómo quisiera llamar el archivo de LibreOffice Impress?: "
    read nombre7
    touch "$nombre7.odp" && echo "---->El archivo '$nombre7.odp' ha sido creado exitosamente (-- touch)."
    exit
    esac
    case $respuesta in
    odg|.odg)
    until [ "$directorio8" = "Descargas" ] || [ "$directorio8" = "Documentos" ] || [ "$directorio8" = "Escritorio" ] || [ "$directorio8" = "Imágenes" ] || [ "$directorio8" = "Imagenes" ] || [ "$directorio8" = "Música" ] || [ "$directorio8" = "Musica" ] || [ "$directorio8" = "Videos" ] || [ "$directorio8" = "Vídeos" ]
    do
    clear && echo -n "¿En qué carpeta desea crear el documento de LibreOffice Draw (Descargas, Documentos, Escritorio, Imágenes, Música, Videos)?: "
    read directorio8
    done
    case $directorio8 in
    Descargas)
    clear && cd ~/Descargas;;
    Documentos)
    clear && cd ~/Documentos;;
    Escritorio)
    clear && cd ~/Escritorio;;
    Imágenes|Imagenes)
    clear && cd ~/Imágenes;;
    Música)
    clear && cd ~/Música;;
    Videos|Vídeos)
    clear && cd ~/Vídeos;;
    esac
    echo -n "¿Cómo quisiera llamar el archivo de LibreOffice Draw?: "
    read nombre8
    touch "$nombre8.odg" && echo "---->El archivo '$nombre8.odg' ha sido creado exitosamente (-- touch)."
    exit
    esac
    fi
    fi

  2. #2
    Fecha de Ingreso
    08-abril-2010
    Ubicación
    /HOME
    Mensajes
    3.726
    Post Thanks / Like
    Poder de Credibilidad
    13
    Hola!

    Como eres nuevo en el foro, pasa por la sección de presentaciones, y no olvides leer las normas del foro.

    Te recomendaría antes de implementar ese código entero, tratar de depurar la parte que te falla, y una vez que lo tengas, ya irle dando los añadidos que creas conveniente.
    Es decir trabajar con algo más reducido, hasta que te funcione la parte que quieres, y después ampliarlo a tus necesidades.

    Saludos.
    Guía básica de openSUSE Leap para recién llegados a GNU/Linux.
    → Mi blog sobre openSUSE, GNU/Linux, software libre ...y de todo un poco: Victorhck in the free world
    → Me puedes seguir en: Mastodon - diaspora* - PixelFed

  3. #3
    Fecha de Ingreso
    23-marzo-2006
    Ubicación
    Sector Horchata
    Mensajes
    1.720
    Post Thanks / Like
    Poder de Credibilidad
    15
    hola,
    yo solo uso scripts a temporada y tengo que buscar en google para acordarme
    pero y si cambias tu linea
    touch $nomprin1{${inicio1}..${final1}}.txt
    por algo como esto (no he probado el codigo igual esta mal pero es para que te hagas una idea):
    for i in {$inicio1..$final1}
    do
    touch $nomprin1{$i}.txt
    done
    me he basado en esta pagina
    http://www.cyberciti.biz/faq/bash-for-loop/

    Salu2

  4. #4
    Fecha de Ingreso
    25-marzo-2013
    Mensajes
    26
    Post Thanks / Like
    Poder de Credibilidad
    0
    Cita Iniciado por xisco Ver Mensaje
    hola,
    yo solo uso scripts a temporada y tengo que buscar en google para acordarme
    pero y si cambias tu linea
    touch $nomprin1{${inicio1}..${final1}}.txt
    por algo como esto (no he probado el codigo igual esta mal pero es para que te hagas una idea):
    for i in {$inicio1..$final1}
    do
    touch $nomprin1{$i}.txt
    done
    me he basado en esta pagina
    http://www.cyberciti.biz/faq/bash-for-loop/

    Salu2
    Pues habrá que tratar algo con el ciclo for, sino que para ser honesto, este tipo de ciclo no lo he entendido , he podido usar until, while... pero for no; es decir, sé que se usa para repetir un bloque de comandos hasta que una sentencia sea falsa, pero nunca he entendido cómo aplicarlo, ni tampoco he entendido bien su estructura.

    bueno, igual voy a probar, practicando se aprende.

    igual si alguien pudiera aclararme un poco las dudas sobre "for", le estaría bastante agradecido.

  5. #5
    Fecha de Ingreso
    19-marzo-2005
    Ubicación
    En un lugar del planeta Tierra
    Mensajes
    17.239
    Post Thanks / Like
    Poder de Credibilidad
    10
    Nos vamos a la seccion de Programacion y scripts. Para empezar tu script es largo largo.... y no muy legible. Si puedes ponlo en http://pastebin.com/ con "Syntax Highlighting¨ = Bash para que podamos leerla mejor.
    NORMAS A CUMPLIR EN LOS FOROS (Lectura obligatoria) Lo siento, no contesto privados sobre problemas con GNU/Linux.
    Síguenos en TWITTER y en FACEBOOK
    Código:
    Buscador de   Alojamiento      Alojamiento     Otros
     paquetes:    de imágenes:     de ficheros:    buscadores:
    Search        TinyPic          Ifile Wuala     Simple y Facil
    Webpinstant   Paste Suse       SendSpace       TextSnip  Cl1p

  6. #6
    Fecha de Ingreso
    25-marzo-2013
    Mensajes
    26
    Post Thanks / Like
    Poder de Credibilidad
    0

    Pastebin

    Cita Iniciado por DiabloRojo Ver Mensaje
    Nos vamos a la seccion de Programacion y scripts. Para empezar tu script es largo largo.... y no muy legible. Si puedes ponlo en http://pastebin.com/ con "Syntax Highlighting¨ = Bash para que podamos leerla mejor.
    Ya lo he puesto en pastebin: http://pastebin.com/2ctY7fxC

    el modo normal (sólo crea un archivo) se usa sin darle opciones, al ponerle -g es que entra en el modo de creación de varias carpetas.

  7. #7
    Fecha de Ingreso
    19-marzo-2005
    Ubicación
    En un lugar del planeta Tierra
    Mensajes
    17.239
    Post Thanks / Like
    Poder de Credibilidad
    10
    Se me ha olvidado decirte que tu codigo esta repetido, prueba utilizar funciones para crear las carpetas y archivos.

    Este es el script para lo que pides, copia y pega:
    Código PHP:
    #!/bin/bash
    nombre="borrar"
    echo "Dame el primer numero"
    read inicio
    echo "Dame el 2º numero"
    read final
    if [ 
    $inicio -ge $final ]; then
       
    echo "El 1er numero mayor que el 2º!, nos vamos fuera"
       
    exit 1
    fi
    for i in $(seq $inicio $final); 
    do 
       
    fichero=""
       
    fichero=$nombre$i
       touch $fichero
    done 
    NORMAS A CUMPLIR EN LOS FOROS (Lectura obligatoria) Lo siento, no contesto privados sobre problemas con GNU/Linux.
    Síguenos en TWITTER y en FACEBOOK
    Código:
    Buscador de   Alojamiento      Alojamiento     Otros
     paquetes:    de imágenes:     de ficheros:    buscadores:
    Search        TinyPic          Ifile Wuala     Simple y Facil
    Webpinstant   Paste Suse       SendSpace       TextSnip  Cl1p

  8. #8
    Fecha de Ingreso
    25-marzo-2013
    Mensajes
    26
    Post Thanks / Like
    Poder de Credibilidad
    0
    Cita Iniciado por DiabloRojo Ver Mensaje
    Se me ha olvidado decirte que tu codigo esta repetido, prueba utilizar funciones para crear las carpetas y archivos.

    Este es el script para lo que pides, copia y pega:
    Código PHP:
    #!/bin/bash
    nombre="borrar"
    echo "Dame el primer numero"
    read inicio
    echo "Dame el 2º numero"
    read final
    if [ 
    $inicio -ge $final ]; then
       
    echo "El 1er numero mayor que el 2º!, nos vamos fuera"
       
    exit 1
    fi
    for i in $(seq $inicio $final); 
    do 
       
    fichero=""
       
    fichero=$nombre$i
       touch $fichero
    done 
    Gracias loco, a ver si ya puedo acabar el script; también tengo que quitar el código repetido.



  9. #9
    Fecha de Ingreso
    24-mayo-2014
    Mensajes
    1
    Post Thanks / Like
    Poder de Credibilidad
    0
    Una disculpa me podria ayudar con este ejercicio soy nuevo en linux y no tengo ni idea de como empezar agradeceria mucha su ayuda

    El o los scripts desarrollados en Linux deberán ejecutar los siguientes requerimientos.
    1. Crear una estructura de directorios que conste de un directorio padre y entre 6 a 10 directorios hijo. Asignar todos los permisos al creador y solo de lectura y ejecución a los demás usuarios (rwxr-xr-x) a todos y cada uno de los directorios.

    2. En cada directorio hijo se deberán crear de 5 a 7 archivos de texto no vacios. El formato para nombrar los archivos puede ser para el primer directorio hijo arch11.fecha, arch12.fecha, arch13.fecha, etc. Para el segundo directorio hijo sería arch21.fecha, arch22.fecha, arch23.fecha, etc. Así sucesivamente para los demás directorios hijo.
    3. La variable fecha que va en todos los nombres de archivos deberá contener la fecha del día en formato ddmmyy (dd=día, mm=mes, yy=año).

    4. En otro script o en el mismo pedir al usuario que introduzca una fecha ddmmyy (dd=día, mm=mes, yy=año) para la cual se desea borrar archivos que se encuentren en cualquiera de los directorios hijo con esa fecha. La fecha que se introduzca no necesariamente tiene que ser la fecha en que se corre el script.

    5. Por último, obtener un listado de los archivos que permanecen en todos los directorios hijos y enviar dicha información tanto a un archivo de salida. El nombre del archivo de salida deberá ser listado.fecha, en este caso la fecha es del día en que se está corriendo el script, listado.ddmmyy y deberá quedar en el directorio padre.

  10. #10
    Fecha de Ingreso
    08-abril-2010
    Ubicación
    /HOME
    Mensajes
    3.726
    Post Thanks / Like
    Poder de Credibilidad
    13
    Hola JuanCarlos_7

    Lo primero como eres nuevo en el foro pasa por la sección de presentaciones y lee las normas de obligado cumplimiento.
    No desvirtues un post con otra pregunta que nada tiene que ver con el tema que se trata en el hilo.
    Y no vamos a picar tu código, eso te compete a ti, aqui se te podría ayudar con algo que tu tengas ya hecho o algo que no entiendas...

    Por la red hay abundante información, que te ayudarán a resolver esos problemas que están hechos para que aprendas por ti mismo, no para pedir que te los hagan en un foro.

    No se trata de saber más o menos de GNU/Linux, es simple programación de scripts, si estás estudiando eso, te recomiendo que repases la materia!!

    Salud!!
    Guía básica de openSUSE Leap para recién llegados a GNU/Linux.
    → Mi blog sobre openSUSE, GNU/Linux, software libre ...y de todo un poco: Victorhck in the free world
    → Me puedes seguir en: Mastodon - diaspora* - PixelFed

Thread Information

Users Browsing this Thread

There are currently 1 users browsing this thread. (0 members and 1 guests)

Temas Similares

  1. Respuestas: 7
    Último mensaje: 07-nov-2012, 00:53
  2. Respuestas: 28
    Último mensaje: 01-oct-2010, 02:40
  3. Carta Pública para DiabloRojo: Indignación
    By iSVQ in forum La cafetería
    Respuestas: 24
    Último mensaje: 24-nov-2009, 09:57
  4. script simple para eliminar archivos [SOLUCIONADO]
    By Juan Carlos in forum Programación y Scripts
    Respuestas: 3
    Último mensaje: 18-mar-2008, 11:03
  5. Crear script de inicio para "pureftpd"
    By criosg in forum General OpenSUSE
    Respuestas: 1
    Último mensaje: 30-abr-2005, 19:12

Tags for this Thread

Marcadores

Normas de Publicación

  • No puedes crear nuevos temas
  • No puedes responder mensajes
  • No puedes subir archivos adjuntos
  • No puedes editar tus mensajes
  •