satorus Posted June 12, 2012 Report Share Posted June 12, 2012 Estimados tengo muchas consultas pero la principal es la siguiente nesecito realizar un script que haga lo siguiente 1. Crear TRES directorios con orden dado por el usuario2. Crear archivos de tipo texto en cualquiera de los directorios3. Copiar y/o mover archivos entre directorios4. Crear un enlace hacia cualquier archivo5. Agregar información a un archivo almacenado6. Cambiar permisos a cualquier archivo almacenado7. Crear cuentas de usuario y de grupo8. Cambiar usuario y grupo a cualquier archivo almacenado Cree el primer menu (con case) y el segundo que es para crear directorioslo que no he podido hacer es que al terminar el segundo case (creando los directorios y usando la opcion para salir) retroceda al "menu principal" Les agradeceria una ayuda porfavor les pego el script que llevo (por ahi lei que pusier aun do while pero no me funciono #!/bin/bashecho "1. Crear Directorio"echo "2. Crear Archivos"echo "3. Crear o mover archivos a directorios"echo "4.Crear enlace a un archivo"echo "5. Editar archivo"echo "6.Cambiar permisos de archivos"echo "7.Crear cuenta de usuario y grupo"echo "8.Cambair usuario y grupo a cualquier archivo" echo "9. Salir"echo -n "ingrese una opcion: "read opcionechocase $opcion in1) do {echo "1. Crear directorio uno dentro de otro"echo "2. Arbol de directorios"echo "3. Directorios independientes"echo "4.salir"echo -n "ingrese una opcion: "read opechocase $op in1) echo -n "ingrese nombre de 1º directorio: "read directoriomkdir $directorioecho -n "Segundo directorio"read directorio2mkdir $directorio/$directorio2echo -n "Ingrese nombre del tercer directorio"read directorio3mkdir $directorio/$directorio2/$directorio3;; 2) echo -n "Ingrese nombre del directorio : "read directoriomkdir $directorioecho -n "crear 2º dir"read directorio2mkdir $directorio/$directorio2echo -n "crear 3º dir"read directorio3mkdir $directorio/$directorio3;;3) echo -n "ingrese numbre 1º dir"read directoriomkdir $directorioecho -n "ingrese nom segun dir"read directorio2mkdir $directorio2echo -n "ingrece etrcer dir"read directorio3mkdir $directorio3;; 4) exit;;esac}while ($op -le 4)esac Link to comment Share on other sites More sharing options...
juiko Posted June 12, 2012 Report Share Posted June 12, 2012 (edited) ¿Algo como esto? #!/bin/bash while (true) do echo "1. Crear Directorio" echo "2. Crear Archivos" echo "3. Crear o mover archivos a directorios" echo "4.Crear enlace a un archivo" echo "5. Editar archivo" echo "6.Cambiar permisos de archivos" echo "7.Crear cuenta de usuario y grupo" echo "8.Cambair usuario y grupo a cualquier archivo" echo "9. Salir" echo -n "ingrese una opcion: " read opcion echo case $opcion in 1) echo "1. Crear directorio uno dentro de otro" echo "2. Arbol de directorios" echo "3. Directorios independientes" echo "4.salir" echo -n "ingrese una opcion: " read op echo case $op in 1) echo -n "ingrese nombre de 1º directorio: " read directorio mkdir $directorio echo -n "Segundo directorio" read directorio2 mkdir $directorio/$directorio2 echo -n "Ingrese nombre del tercer directorio" read directorio3 mkdir $directorio/$directorio2/$directorio3;; 2) echo -n "Ingrese nombre del directorio : " read directorio mkdir $directorio echo -n "crear 2º dir" read directorio2 mkdir $directorio/$directorio2 echo -n "crear 3º dir" read directorio3 mkdir $directorio/$directorio3;; 3) echo -n "ingrese numbre 1º dir" read directorio mkdir $directorio echo -n "ingrese nom segun dir" read directorio2 mkdir $directorio2 echo -n "ingrece etrcer dir" read directorio3 mkdir $directorio3;; 4) continue esac esac done Edited June 14, 2012 by juiko Link to comment Share on other sites More sharing options...
satorus Posted June 12, 2012 Author Report Share Posted June 12, 2012 (edited) Exacto muchisimas gracias!!! ahora a agregar las otras opciones :D *-******** Disculpa ¿como podria realizar el punto dos? había pensando en algo asi 2)echo "Ingerese nombre del directorio creado donde desea el primer archivo"read directorioread directorio2read directorio3 cd $directorio or $directorio2 or $direcotio3read archivo touch $archivo;; pero me da un error Edited June 12, 2012 by satorus Link to comment Share on other sites More sharing options...
juiko Posted June 13, 2012 Report Share Posted June 13, 2012 (edited) No se si es esto lo que quieres hacer #!/bin/bash echo "¿Donde quieres crear el archivo?" read directorio if [ -e $directorio ]; then echo "¿Nombre del archivo?" read archivo echo > $directorio/$archivo else echo "No existe el directorio ... chau"; fi Edited June 13, 2012 by juiko Link to comment Share on other sites More sharing options...
satorus Posted June 19, 2012 Author Report Share Posted June 19, 2012 mira hasta ahora llevo este #!/bin/bashclearwhile (true) doechoecho echo menu(){ echoecho " Menu de directorios" echo echo "1.Crear directorio lineal" echo "2.Crear directorio arbol" echo "3.Crear directorio cadena" echo echo "Menu de manejo de usuario" echo echo "4.Crear archivo" echo "5.Crear copia de archivo" echo "6.Mover archivo" echo "7.Crear un enlace a un archivo" echo "8.Agreagar informacion" echo "9.Asignar permisos" echo "10.Crear cuentas de usuario" echo "11.Crear cuentas de grupo" echo "12.Cambiar ususario y grupo a cualquier archivo" echo "13.Salir" echoecho -n "ingrese su opcion:"read op }menu case $op in1) echo -n "ingrese nombre del primer directorio :" read directorio mkdir $ directorio echo -n " ingrese nombre del segundo directorio :" read directorio2 mkdir $directorio2 echo -n "ingrese nobre tercer directorio :" read directorio3 mkdir $directorio3;;2) echo -n "ingree nombre del primer directorio :"read directoriomkdir $directoriocd $directorioecho -n "ingrese nombre del segundo directorio :"read directorio2mkdir $directorio2cd $directorio2echo -n "ingrese nombre del tercer dirct :"read directorio3mkdir $directorio3;;3) echo -n "ingrese nombre del primer directorio :" read directorio mkdir $directorio cd $directorio echo -n "ingrese ombre del segundo directorio :" read directorio2 mkdir $directorio2 echo -n "ingrese nombre del tercer directorio :" read directorio3 mkdir $directorio3;;4) echo -n "ingrese nombre del archivo :" read nombre echo -n " ingrese el directorio donde quedara el archivo:" read directorio cd $directorio touch $nombre;;5) echo -n "ingrese nombre del archivo que desea copiar:"read nombreecho -n "ingrese nombre del directorio de origen de el archivo:"read copecho -n "ingrese nombre del directorio donde copiara el archvo:"read pegcp $cop/$nombre $peg;; 6) echo -n "ingrese nombre del archivo de desea mover:"read nombreecho -n "ingrese nombre del directo de origen del archivo:"read copecho -n "ingrese nombre de directorio donde copiara el achivo:"read pegmv $cop/$nombre $peg;; 7) echo -n "ingrese el nombre del archivo que desea enlazar"read nomecho -n "ingrese el nombre del enlace"read nom_enlaceln $nom $nomenlace;; 8) echo -n "ingrese nombre del archivo:" read nombre echo -n "ingrese nombre del directorio de origen del archivo:"echo "Recuerde salir con CTRL+D" read cop cat > $cop/$nombre;; 9) echo -n "ingrese nombre del directorio de origen del archivo:" read nom_ar echo -n "ingrese permisos:" read perm chmod $perm $nom_ar;; 10) echo -n "ingrese nobre de usuario:" read user_name echo -n "ingrese pass:" read pass adduser $user_name pass $pass;; 11) echo -n "ingrese nombre de grup:" read nom_grup addgroup $nom_grup;; 12) echo -n "ingrese nombre del archivo que desee cambiar:" read nom_arc echo -n "ingrese nuevo usuario y grup:" chown $usu_gru $nom_arc;; 13) exit;; esac done pero nos e como usar dos menus y me ira error con copia ry mover archivos y el enlace creo que esta mal tambien me gustaria también que al copiar no fuese necesario ingresar la ruta de el archivo a copiar , osea que se buscase solo Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now