Test Foro de elhacker.net SMF 2.1

Programación => Scripting => Mensaje iniciado por: minette1988 en 13 Mayo 2010, 12:42 PM

Título: contar caracteres
Publicado por: minette1988 en 13 Mayo 2010, 12:42 PM
Hola, esta tarde tengo examen y tengo este script que cuenta los caracteres de una cadena pasada como parámetro, pero me da este error: wc: pepe: No existe el fichero ó directorio
pepe tiene caracteres
Código (bash) [Seleccionar]
#!/bin/bash

if [ -n $1 ]
then
    num_carac= `wc -c $1`
    echo $1 "tiene" $num_carac "caracteres"
else
    echo "Error no se ha introducido ningún parámetro"
fi
Título: Re: contar caracteres
Publicado por: biribau en 13 Mayo 2010, 16:23 PM
Cita de: minette1988 en 13 Mayo 2010, 12:42 PM
Código (bash) [Seleccionar]

    num_carac= `wc -c $1`

No puede haber espacios en asignaciones a variables entre el =
A="hola" bien
A= "hola" mal
El error no parece tener que ver con eso, pero ten en cuenta eso
Título: Re: contar caracteres
Publicado por: cgvwzq en 13 Mayo 2010, 21:29 PM
Código (bash) [Seleccionar]
num_carac=`echo $1 | wc -c`

Ten en cuenta que te contará el salto de linea, así que resta uno.
Título: Re: contar caracteres
Publicado por: leogtz en 13 Mayo 2010, 23:31 PM
echo -e "Leo" | tr -d '\n' | wc -c

#!/usr/bin/bash
name="Leo"
echo -e "`expr length $name`";


#!/usr/bin/bash
name="Leo";
echo -e "${#name}";


echo -e "Hola" | perl -ne 'print length($_) - 1, "\n"'


Etc, etc