AWK, Perl?? J'ai un AWK ligne de commande. Je ne sais pas comment l'utiliser dans un script Perl
Mon AWK commande est:
awk'BEGIN {count=0} {count=count+($3-$2)} END {print count}' zebrafish
Comment puis-je l'utiliser dans un script Perl?
Je ne vois pas la nécessité de l'utilisation de awk dans perl. La même fonctionnalité peut être mis en œuvre entièrement à l'intérieur de perl. Veuillez vérifier ma solution
Vous pouvez convertir un script awk dans un script perl à l'aide de la norme a2p programme.
Vous pouvez également réduire votre
Vous pouvez convertir un script awk dans un script perl à l'aide de la norme a2p programme.
Vous pouvez également réduire votre
awk
à: awk '{count+=($3-$2)} END {print count}'
OriginalL'auteur user2923577 | 2013-10-26
Vous devez vous connecter pour publier un commentaire.
Je ne vois pas la nécessité d'utiliser
awk
dansperl
. La même fonctionnalité peut être mis en œuvre entièrement à l'intérieur deperl
comme suitSi vous voulez toujours utiliser
awk
Vous pouvez utiliser
system
la fonction à appeler toutes les commandes shell, iciawk
, dePerl
scriptSi vous voulez de sortie de
awk
pour stocker dans une variable à l'intérieur deperl
ensuite utiliserSur une note de côté, votre
awk
de commande peuvent être compressés àOriginalL'auteur jkshah
Pourquoi êtes-vous à l'aide de Perl, AWK ensemble? Même si le AWK code est déjà écrit, si vous êtes en l'étendant avec Perl, il fait probablement de sens à le traduire en Perl. Par exemple:
Vous pouvez également utiliser les options de ligne de commande pour écrire un Perl one-liner qui fait ce que l'AWK code:
Mais sous cette forme il n'est pas très facile à intégrer au sein d'un grand programme en Perl que le code AWK est.
OriginalL'auteur Mark Reed
Vous pouvez utiliser:
OriginalL'auteur cirne100
La commande dans votre Perl doit être:
N'oubliez pas d'échapper les caractères
$
,"
, et je ne sais pas quoi d'autre avec\
. En cas de doute, essayer de s'échapper; c'est la philosophie.Je l'ai essayer sur ce fichier: $ cat poisson zèbre 11 222 444 555 (EOR) 222 444 555 666 (EOF) à l'Intérieur d'un script perl (système de"awk 'BEGIN {count =0} {count =count+(\$3-\$2)} END {print count}' poisson-zèbre"); résultat: 333 Cela Fonctionne!
Merci encore. Ce que j'ai est: Colonne 2: 1 ,2,3 et la colonne 3 est 4,5,6....Ce dont j'ai besoin est ((4-1)+(5-2)+(6-3))....
OriginalL'auteur Thomas8
Lorsque Perl premier est arrivé, il a été utilisé comme plus puissant awk remplacement.
En raison de ce besoin, Perl vient avec l'utilitaire de
a2p
, qui est conçu à cet effet, - il représenteawk to perl
.J'ai essayé d'enregistrer votre script dans un fichier, et de le lancer à travers
a2p
, et il a bien fonctionné généré de travail script Perl. Il n'a pas été très court (environ 20 lignes), mais il a travaillé.OriginalL'auteur mvp