Título: Syntax error: “(” unexpected (expecting “fi”) -- Como puede ser? Publicado por: slyfx en 14 Marzo 2014, 02:43 am Código: #!/bin/bash He mirado de intentar que no se por el then el cual tenga que ir : if [] ; then por si no hacia bien el cerrado del if pero, no veo donde cae el error... alguna idea? Título: Re: Syntax error: “(” unexpected (expecting “fi”) -- Como puede ser? Publicado por: Gh057 en 14 Marzo 2014, 02:46 am (edito) hola slyfx perdón escribi una burrada, estaba con otro tema.
revisa por favor el primer if, no deberías agregarle paréntesis y negarla completa? el error entiendo que te tira en la línea 6. (agrego) no son parentesis, te está faltando un espacio antes del !. no interpreta bien la sentencia. prueba si te funciona ahora, saludos Título: Re: Syntax error: “(” unexpected (expecting “fi”) -- Como puede ser? Publicado por: slyfx en 14 Marzo 2014, 03:02 am (edito) hola slyfx perdón escribi una burrada, estaba con otro tema. revisa por favor el primer if, no deberías agregarle paréntesis y negarla completa? el error entiendo que te tira en la línea 6. ---------------------- Hola Gh057, es lo que no entiendo porque me tira el error en la linea 12 es decir donde pone "grupos=(cut ...)", no entiendo porque deberia ser alli donde salta el unexpected Gracias Edito: ahora leo lo que pone e intento gracias de nuevo ----------------------- Edito: Nada, sigue tirando el mismo error y en la misma linea, he puesto espacio como tu has dicho y igual, he probado de modificar la forma de hacer la creacion del array pero nada.. Gracias por tu colaboracion Título: Re: Syntax error: “(” unexpected (expecting “fi”) -- Como puede ser? Publicado por: Gh057 en 14 Marzo 2014, 03:14 am agregando un espacio en el primer if, no me tira errores de interpretación:
Código: ~/Codes$ nano error si hay algo que no funca bien... pero es lógico, no de sintaxis Título: Re: Syntax error: “(” unexpected (expecting “fi”) -- Como puede ser? Publicado por: Gh057 en 14 Marzo 2014, 03:37 am con respecto a usuarios.csv; como lo tienes grabado? no será problema del delimitador?
(agrego) entiendo que la opción d es el delimitador, por lo cual entiendo que si usas la coma deberías indicarla entre comillas; otro punto que veo porqué usas la opción --stdin? no es un parámetro válido de passwd: Código: Opciones: Título: Re: Syntax error: “(” unexpected (expecting “fi”) -- Como puede ser? Publicado por: slyfx en 14 Marzo 2014, 04:13 am con respecto a usuarios.csv; como lo tienes grabado? no será problema del delimitador? (agrego) entiendo que la opción d es el delimitador, por lo cual entiendo que si usas la coma deberías indicarla entre comillas; otro punto que veo porqué usas la opción --stdin? no es un parámetro válido de passwd: Código: Opciones: Exacto, con lo del espacio tenias razon, pues no ejecutaba bien el script, con lo del delimitador si, tengo -d, ya que en el csv lo tengo grabado como: pepito feo,pass1234,grupo Con lo cual tendria que añadirse : pfeo (user) pepito feo (name, last name) y el grupo al que pertenece. Lo de passwd --stdin pense que funcionaria pues vi en algun sitio que lo ponian ya que la opcion -p no la cogia bien es más en la linea de useradd intente ponerla de este modo: Código: useradd -n -c ${nombrecompleto[$x]} -g "${grupos[$x]}" -p "${password[$x]}" $usuario 2> /dev/null y no lanza error pero no inserta.. muchas gracias por insistir ! Título: Re: Syntax error: “(” unexpected (expecting “fi”) -- Como puede ser? Publicado por: Gh057 en 14 Marzo 2014, 04:19 am ok ya no tira errores? privilegios del archivo de lotes? recuerda que estás editando en /etc
Título: Re: Syntax error: “(” unexpected (expecting “fi”) -- Como puede ser? Publicado por: slyfx en 14 Marzo 2014, 04:24 am Si, tengo permisos en todas las carpetas, ahora estoy mirando de solucionar el tema de la password
Título: Re: Syntax error: “(” unexpected (expecting “fi”) -- Como puede ser? Publicado por: Gh057 en 14 Marzo 2014, 04:56 am es que no te inserta el addusers porque estás intentando de insertar un nombre con espacios (nombre completo, pepito feo) deberías ahí insertar el usuario pfeo; por lo que te lleva recursivamente a revisar la variable usuario...
el comando cut lo delimitas por comas tanto para password, nombre completo como para grupos, sin embargo en usuarios debes tomar la primera letra, y la segunda cadena completa, que lo limita un espacio. bueno espero que puedas solucionarlo mirando esos puntos, luego si sigues trabado postea nuevamente el código ya que ha variado bastante, sino vamos a marearnos todos ;D en algunas horas vuelvo jejeje saludos! Título: Re: Syntax error: “(” unexpected (expecting “fi”) -- Como puede ser? Publicado por: slyfx en 14 Marzo 2014, 05:45 am es que no te inserta el addusers porque estás intentando de insertar un nombre con espacios (nombre completo, pepito feo) deberías ahí insertar el usuario pfeo; por lo que te lleva recursivamente a revisar la variable usuario... el comando cut lo delimitas por comas tanto para password, nombre completo como para grupos, sin embargo en usuarios debes tomar la primera letra, y la segunda cadena completa, que lo limita un espacio. bueno espero que puedas solucionarlo mirando esos puntos, luego si sigues trabado postea nuevamente el código ya que ha variado bastante, sino vamos a marearnos todos ;D en algunas horas vuelvo jejeje saludos! Muchisimas gracias por tu ayuda, referente a lo del cut, he cambiado la coma por ":" a ver que tal pero sigue sin ir. Luego lo que dices de tomar la primera letra y la segunda cadena he realizado un "echo" del resultado tal y como lo tendría que insertar y me hace bien el hecho de coger la primera letra y la segunda cadena pero el problema es que no se inserta.. Por otra parte a nivel de passwd y lo cambié y lo puse en la linea de useradd como ya dije Código: useradd -n -c ${nombrecompleto[$x]} -p ${password[$x]} -g "${grupos[$x]}" $usuario 2> /dev/null" Código: echo "${password[$x]}" | passwd --stdin "$usuario" > /dev/null Te dejo el código tal y como esta ahora: Código: #!/bin/bash mi csv usuarios.csves el siguiente: Código: Pepito Feo:12345633:156-456-3322:995 Bluto Street, Anywhere, USA 29358:3/19/1992:Accounts:22350 De nuevo, muchas gracias! sigo buscando a ver que puede ser. Saludos! :D |