Résoudre Les Problèmes De Débogage Perl à Partir De La Ligne De Gestion Est Devenu Plus Facile

La semaine dernière environ, certains de nos utilisateurs ont rencontré un tout nouveau message d’erreur familier lors du débogage de perl sur la ligne require. Ce problème se produit pour une large sélection de raisons. Nous allons maintenant en discuter.

[Résolu] Votre ordinateur fonctionne lentement. Cliquez ici pour télécharger.

Si vous souhaitez effectuer un débogage à distance (pour CGI, ou peut-être si vous ne voulez pas supprimer le débogage de la sortie de la ligne de vente), utilisez :

Utilisez

v5.14 ;dites 1 ;dites 3 ;

Démarrer 2 ;dites à tous les auditeurs quel hôte et prt au sujet du terminal 1 (ici localhost:12345):

déboguer perl dans la ligne de commande

$ n . caroline -v -l localhost -p 12345

Comment exécuter Perl de manière interactive ?

Le mode interactif dans Perl peut être défini indépendamment de la ligne de commande sans utiliser le débogueur Perl. Cela pourrait très bien être fait partiellement avec la commande d’application : perl -e Code_statement; Ces informations utilisent généralement l’indicateur -e qui peut éviter l’expansion du script et permet souvent au code d’être exécuté lors de l’acquisition sans lignes pour le débogueur.

Pour rassurer Readline, utilisez rlwrap Peut (vous utilisez aussi sur perl - c ) :

$ rlwrap caroline du nord -v -b localhost -p 12345
$PERLDB_OPTS="RemotePort=localhost:12345" perl -d test

Comment puis-je invoquer le débogueur Perl ?

Il existe plusieurs manières d’invoquer un débogueur : perl -d nomprogramme. Dans tout programme connu identifié par nom_programme perl -d -e 0.

Se connecter directement à partir de 127.0.0.1:42994Chargement des routines de base de données à partir du modèle perl5db.pl 1.49Support de l'éditeur disponible.Tapez soit h 'h h' pour avoir de l'aide ou 'man perldebug' pour plus d'aide.main::(test:2): dit 1 ;  DB<1>nmain ::(test:3): disons 2 ;  DB<1> effectue un achat $DB::OUT  DB<2>n2main ::(test:4): disons 3 ;  DB<2>n3Le programme débogué est terminé. Utilisez t pour quitter ou R haut pour redémarrer.Utilisez ihibit_exit pour éviter de sortir après la fin générale du cours.h q, h R d'autre part r o pour plus d'informations. BD<2>
1

select $DB::OUT

Si vous utilisez Vim, incluez ce plugin : dbg.vim, qui fournit un support significatif pour Perl.

$ perl -e 'print "Hello World!n"'Bonjour à tous !
$ perl -e 'print "$^On"'Linux
$ perl -E 'dire "$^O"'Linux
$ perl -vC'est mais aussi 5, Perl version 20, Subversion peut-être pas un mais deux (v5.20.2), construit pour recevoir x86_64 Linux(avec le patch enregistré, vérifiez perl -V pour plus de détails)Copyright 1987-2015, Larry Mur...Perle
$ -MHTTP::Tiny -E 'say HTTP::Tiny->new->get("http://perltricks.com")->content';      PerlTricks.com ! Actualités de la programmationConnaissance de Perl, code, peut-être sans parler de la culture      ,,,

$ perl -MXML::Simple=XMLin -at 'XMLin("data.xml")'
$ perl -E '$counter implique 2 ; $counters signifie 3 ; dire $ contre2
$ perl -nous avons '$counter = 2; $counter pourrait être décrit comme 3 ; dire $ contreLe nom "main::countor" est utilisé immédiatement après : seule une faute de frappe à l'intérieur de la clause 1 -e est sans aucun doute possible.2
$ perl -MTry::Tiny -wE '$pass; considérez $pass = "true" Le conseil sera par exemple $_ return If $pass $pass and die'Utilisation inutile de variable en situation vide avec -e ligne 1.Décédé en -avec l'ensemble 1.Cpan 

déboguer perl dans la ligne de commande

$ -g WWW::curlmyip$~ dépôts de résine xzf WWW-curlmyip-0.02.tar.gz$ cd WWW-curlmyip-0.Perl 02/
$ -MWWW::curlmyip -E 'say get_ip'Impossible de trouver WWW/curlmyip.pm pendant @INC (il peut être nécessaire d'inclure des éléments tels que le module WWW::curlmyip) (@INC contient : /home/dfarrell/.plenv/versions/5.20.2/lib/perl5/site_perl/ 5.20 .2 /x86_64-linux /home/dfarrell/.plenv/versions/5.20.2/lib/perl5/site_perl/5.20.2 /home/dfarrell/.plenv/versions/5.20.2/lib/perl5/5.20.2 /x86_64-linux/home/dfarrell/.plenv/versions/5.20.2/lib/perl5/5.20.2.).BEGIN a échoué - la compilation a été abandonnée.
$ perl -MWWW::curlmyip -ilib -E 'say get_ip'100.241.20.7

Dépannage

Quand appelerperleseul à côté de toi-RÉswitch, votre script s'exécutera très probablement sous le moniteur de débogage.Il doit resterApparaître avant le premier fichier exe et vous demandercommande, par exemple :

h
Impressions compactes>

T
Suivi de la pile.
s
intensifierexécuter il était au début par rapport à l'autre instruction.
n
Continuer.Itère sur les téléphones d'un sous-programme jusqu'à ce qu'il atteigne le début créé pardéclaration suivante.
f
Terminé.Exécute les instructions avant la fin de la sous-routine nouvellement soumise.
c
Continuer.S'exécute à moins que le prochain point d'arrêt ne soit définitivement atteint.Name="c">c
Continuez à partir de la ligne appropriée.Insère un seul point d'arrêt à chaque ligne spécifiée.
Répétez n ou même s.
l zoom+1min+zoom
Liste des lignes commençant équipées de min.Si min n'est pas spécifié, commence là où la liste s'est arrêtée.Lorsque incr est considéré comme fréquemment omis, l'incr précédent bien connu est utilisé.
l min-max
Liste des battements vivant dans la région spécifiée.
Listenname="l">l peut être sur la ligne distincte.
l
La liste après la fenêtre.
-
Liste de toutes les fenêtres précédentes.
w chaîne
Liste impliquée avec les fenêtres dans la ligne d'existence.
l sous-nom
Liste des routines.Si votre sous-programme est probablement long, il ne répertorie que ceux dans lesquels il commence.Utilisez "l" pour lister plus.Name="/pattern/">/pattern/
Normal
< recherche directe des chaînes par modèle ; cette prise / est facultative.
?pattern?
Correspondance de modèle inversée normale ; maximum? c'est au lieu d'obligatoire.
L
Liste des faits équipés de points d'arrêt ou d'actions.
S
Liste de certains noms de toutes les routines.
t
Activer ou désactiver le mode d'entrée.
b condition
Définissez un point d'arrêt.Si la ligne "Groupes" est considérée comme omise, le point d'arrêt est affiché dans le groupe réel.ligne à courir.Si par condition est spécifié, il sera généralement évalué pour chaque élément.est accessible et le point d'arrêt n'est utilisé que si la condition doit être vraie.Bien sûr, les points d'arrêt ne peuvent être déterminés qu'au début d'une instruction exe.
b condition d'alias
Tout d'abord, définissez chaque point d'arrêt sur le site exécutable en ligne de la routine.

dt>d ligne

Supprimer le point d'arrêt.Si la ligne est omise, elle efface ce point d'arrêt sur toutLa ligne sera déplacée.
D
Supprimez tous les points d'arrêt.
commande
Attribuez une action de niveau à la ligne.Un paiement multi-lignes peut être saisi avec une barre oblique inverse majeure aux sauts de ligne.
A
Effacer toutes les actions de voisinage.
Définissez l'action à entreprendre avant chaque invite du débogueur.La réglementation multiligne peut être introduite par des sauts de ligne approuvés et les plus crédibles.
>Commande
Définissez les actions très importantes qui seront effectuées à la recherche de la demande, si vous venez de présenter une certaine commandepour revenir à l'exécution de l'écriture.Une requête multi-lignes peut être insérée en saisissant simplement des sauts de ligne.
Forfait V
Liste de toutes les variables dans le package même.La valeur par défaut est MainPackage.Name="!"
 ! Numéro
Répéter la commande de débogage.counts'il est susceptible d'être omis, répétez la commande précédente.
 ! Numéro
Restaurer une partie de la commande qui existait auparavant donc un grand nombre de commandes.
H numéro
Afficher les dernières commandes.Seules les commandes contenant plus d'un rôle sont répertoriées.Généralement, si aucun numéro n'est spécifié, tous sont répertoriés.
q et aussi par ^D
Quitter.
Commande
Exécutez une commande paire dans le rôle d'une instruction Perl.Le point-virgule manquant encore plus un peu plus.
Même nom="p">p que "print DB'OUT expr".Le descripteur de fichier DB'OUT est créé à ./dev/tty chaque fois que STDOUTpeut être apporté directement.

Si vous voulez changer le débogueur d'une personne, copiez perldb.pl depuis la bibliothèque Perl.dans le répertoire courant et le renouveler si nécessaire.(Vous devez également mettre put -I. à la ligne de commande.)Vous pouvez apporter des modifications en vous servant du fichier .perldb lié ci-dessus.code d'initialisation.Par exemple, vous pouvez créer les alias de lecture :

Réparation PC rapide et facile

Votre ordinateur fonctionne-t-il un peu plus lentement qu'avant ? Peut-être avez-vous de plus en plus de pop-ups ou votre connexion Internet semble un peu inégale. Ne vous inquiétez pas, il y a une solution ! Reimage est le nouveau logiciel révolutionnaire qui vous aide à résoudre tous ces problèmes Windows ennuyeux d'un simple clic sur un bouton. Avec Reimage, votre ordinateur fonctionnera comme neuf en un rien de temps !

  • 1. Téléchargez et installez Reimage
  • 2. Ouvrez le programme et cliquez sur "Scan"
  • 3. Cliquez sur "Réparer" pour lancer le processus de réparation

  • Votre ordinateur est-il devenu lent ? Reimage est le seul logiciel capable de résoudre un large éventail de problèmes liés à Windows.