2009-12-07 7 views
0

J'essaie de créer un script, et une partie nécessite d'afficher des lignes avec des valeurs numériques.sortie grep différente sur deux serveurs

Ma syntaxe de base est:

echo $i | grep [0-9] 

Par exemple, je mis i=12345, il doit générer 12345.

Mais sur un serveur, il ne sort rien (exactement les mêmes commandes).

Je ne sais pas comment Google ce problème, j'ai essayé "sortie grep différente sur un autre serveur", en vain.

Répondre

0

peut-être que c'est un problème de coque? quelques coquilles interpert [] différemment essayer

echo "1234" | grep "[0-9]" 

(avec guillemets)

aussi essayer

grep --version 

pour voir s'il y a une autre version grep

1

Lorsque vous utilisez une expression rationnelle, utilisez egrep ou grep -e pour vous assurer que le motif n'est pas traité en tant que chaîne simple.

+0

J'ai essayé, mais l'autre serveur ne produit toujours RIEN. –

+0

Avez-vous utilisé des citations suggérées par Noir Levy? Il peut y avoir un fichier appelé "5" dans ce répertoire ou quelque chose. –

+0

J'ai utilisé "" et cela a fonctionné. Une dernière question, devrais-je utiliser "-e" à chaque fois que j'utilise des crochets sur grep? –

Questions connexes