Título: longitud de linea en bash Publicado por: andaluz en 27 Marzo 2011, 18:30 pm hola a todos, tengo una duda que creo que es muy simple, como puedo saber los caracteres que tiene una linea, por ejemplo:
echo 'Introduce un nombre: ' read -p nombre como puedo sacar el numero de caracteres del nombre que se ha introducido por teclado?? saludos Título: Re: longitud de linea en bash Publicado por: SuperDraco en 27 Marzo 2011, 18:53 pm El siguiente código no es mio, pero funciona:
Código
Para medir la longitud sería algo como: Código: Set mensaje=PONAQUILOQUEQUIERAS Y para mostrar la longitud, pues con un: Código: Echo El mensaje tiene %lenght% caracteres. PD: Perdon es que le di al boton de postear sin querer xD Título: Re: longitud de linea en bash Publicado por: andaluz en 27 Marzo 2011, 18:57 pm pitoloko, no entiendo lo que me has puesto, me lo puedes explicar??
Título: Re: longitud de linea en bash Publicado por: andaluz en 27 Marzo 2011, 19:04 pm sigo sin entender el codigo!!!
Título: Re: longitud de linea en bash Publicado por: mael0c en 27 Marzo 2011, 19:07 pm Ola
Para saber la longitud de la variable nombre (en tu ejemplo): Código: echo ${#nombre} Existen más formas de hacerlo, buscando en google se encuentran rápidamente, pero esta me parece la más sencilla. Título: Re: longitud de linea en bash Publicado por: leogtz en 27 Marzo 2011, 19:12 pm @pitoloko, es Bash, no Batch.
Hay varias, creo que ya había puesto varias, pero bueno, también puedes usar wc: Código: echo $string | tr -d '\n' | wc -c Código: echo `expr length $string` Título: Re: longitud de linea en bash Publicado por: SuperDraco en 27 Marzo 2011, 19:13 pm Código: [quote author=Leo Gutiérrez. link=topic=322977.msg1595952#msg1595952 date=1301245926] Título: Re: longitud de linea en bash Publicado por: andaluz en 27 Marzo 2011, 19:26 pm Este es el codigo que yo he realizado:
Código
me pueden decir si podria ser algo asi para extraer el numero de caracteres?? Título: Re: longitud de linea en bash Publicado por: leogtz en 27 Marzo 2011, 19:45 pm ¿por qué no usas lo que te hemos puesto en vez de reinventar la rueda?
¿O lo tienes que hacer sin usar lo que te hemos puesto? Título: Re: longitud de linea en bash Publicado por: andaluz en 27 Marzo 2011, 19:49 pm no he usado lo que me habeis puesto porque hay cosas que no entiendo como funcionan. lo que he puesto si entiendo lo que hace.
se podria hacer de la forma que he puesto yo?? Título: Re: longitud de linea en bash Publicado por: leogtz en 27 Marzo 2011, 19:53 pm Tu código está mal porque i jamás va a tomar el valor de nueva línea, podrías caer en un ciclo infinito.
Usa esto: Código: echo ${#nombre} Es lo más básico. Una variable en Bash se puede encerrar entre corchetes $string = ${string}, los dos hacen exactamente lo mismo. ${#string}, el símbolo # nos devuelve el número de caracteres que tiene la string. Título: Re: longitud de linea en bash Publicado por: andaluz en 27 Marzo 2011, 20:14 pm pero si yo ago esto:
Código
el valor de longitud es 0, porque?? Título: Re: longitud de linea en bash Publicado por: leogtz en 27 Marzo 2011, 20:18 pm Código
|