Question : Pourquoi wc la commande imprime un nombre de caractères de sortie incorrect lorsqu'elle est utilisée avec echo commande sous Linux? Voici la commande que j'ai utilisée pour compter le nombre de caractères dans une chaîne.
$echo "santhosh" | wc -c 9
Mais cela me donne toujours un compte de plus, comme le montre la sortie ci-dessus ! Est-ce que je fais quelque chose de mal ? S'il vous plaît, aidez-moi à résoudre ce problème.
Solution : Le problème n'est pas avec wc, mais avec l'utilisation de echo. Par défaut echo
la commande ajoute un caractère de fin de ligne et lorsqu'elle est redirigée vers wc commande, vous voyez un caractère compter de plus que la longueur réelle de la chaîne.
Pour supprimer la fin de ligne, utilisez -n option pour echo
commande comme indiqué ci-dessous :
$echo -n "santhosh" | wc -c 8Noter
Bash est le shell de commande par défaut dans presque toutes les principales distributions Linux. Cette commande a donc été testée sur bash shell.