Quel est le bogue dans le script suivant?Pourquoi ne puis-je obtenir qu'un seul numéro de ce script?
#! /bin/tcsh -f
cut -d" " -f2 ${1} | ./rankHelper
Script rankHelper:
#! /bin/tcsh -f
set line = ($<)
while(${#line} != 0)
cat $line
set line = ($<)
end
Fichier lines
à partir de laquelle les données ont été envoyées:
053-3787837 038280083
052-3436363
053-3232287 038280083
054-3923898 033333333
052-2222333
052-1111111
Je cours à l'aide:
> ./rank lines
Pourquoi est-ce que je reçois seulement le nu suivant mber? Je pensais que cut
doit couper deux champs de toutes les lignes. Je me attends à voir le deuxième champ de toutes les lignes des lignes:
dos2unix: converting file rank to UNIX format ...
> ./rank lines
>
> cat -A rank
#! /bin/tcsh -f$
cut -d" " -f2 ${1} | ./rankHelper
> cat -A rankHelper
#! /bin/tcsh -f$
set line = ($<)$
$
$
while(${#line} != 0)$
$
echo $line$
set line = ($<)$
end
Je travaille sur C shell.
Merci pour les détails, mais Il vous manque un élément important: Qu'avez-vous * espérer * obtenir par la suite? Qu'est-ce que vous avez montré est exactement ce que je m'attendais à couper avec '-f2'. –
'couper' doit couper 2 champs de toutes les rangs, oui? – lego69
Il s'attend à obtenir le deuxième champ de chaque rangée, je crois. –