Rozwiązywanie Problemów Z Debugowaniem Perla Z Potoku Poleceń Właśnie Stało Się łatwiejsze

W zeszłym tygodniu niewielka liczba naszych użytkowników napotkała komunikat o błędzie podczas korzystania z debugowania perla w wierszu instrukcji. Ten problem występuje z wielu powodów. Teraz omówimy je.

[Rozwiązany] Twój komputer działa wolno. Kliknij tutaj, aby pobrać.

Jeśli chcesz wybrać zdalne debugowanie (dla CGI, lub jeśli nie chcesz marnować wyników debugowania z wiersza poleceń), użyj:

Użyj

v5.14;powiedzmy 1;powiedz 3;

Rozpocznij 2;powiedz każdemu tłumowi jaki host i prt na fatal 1 (tutaj localhost:12345):

debugowanie perla w wierszu poleceń

$ część północna carolina -v -l localhost -p 12345

Jak kompletnie interaktywnie uruchamiam Perla?

Interaktywne ustawienie w Perlu można uruchomić indywidualnie z wiersza poleceń bez ćwiczenia debugera Perla. Można to zrobić tylko częściowo za pomocą następujących instrukcji: perl -e Code_statement; Dyrektywa ta często używa flagi -e, aby zapobiec rozszerzaniu skryptu i często pozwala na uruchomienie number po komendzie, jeśli nie masz wierszy dla debuggera.

Aby utworzyć kopię zapasową Readline, użyj rlwrap Czy (możesz też wziąć udział w perl - d ):

$ rlwrap północna Karolina -v -l localhost -p 12345
$PERLDB_OPTS="RemotePort=localhost:12345" test perl -d

Jak mam wywołać debugger Perla?

Istnieje kilka sposobów na wywołanie debuggera psa: perl -d nazwaprogramu. W popularnym programie identyfikowanym przez nazwa_programu perl -r -e 0.

Połącz bezpośrednio z 127.0.0.1:42994Ładowanie procedur systemowych z szablonu perl5db.pl 1.49Dostępne jest prowadzenie wydawcy.Wpisz h 'h h', aby pomóc lub 'man perldbug', aby uzyskać dużo pomocy.main::(test:2): mówi 1;  DB<1>nmain::(test:3): ekspres 2;  DB<1> kupuje $DB::OUT  DB<2>n2main::(test:4): powiedz 3;  DB<2>n3Debugowany program został ukończony. Użyj q - wyjdź lub R, aby ponownie uruchomić.Użyj ihibit_exit w górę, aby uniknąć wychodzenia po zakończeniu kursu coachingowego.h q, h R lub l o, aby uzyskać więcej informacji. DB<2>

1

wybierz $DB::OUT

Jeśli używasz Vima, zainstaluj tę wtyczkę: dbg.vim, która zapewnia podstawowe wskazówki dla Perla.

$ perl -e 'print "Witaj świecie!n"'Witam wszystkich!
$ perl -e 'wypisz "$^On"'Linux
$ perl -E 'powiedz "$^O"'Linux
$ perl -vJest też piąta, Perl w wersji 20, Subversion nie konkretna, ale druga (v5.20.2), zbudowana na x86_64 Linux(z zapisaną poprawką, zobacz perl -V po szczegóły)Prawa autorskie 1987-2015, Larry Wall...Perła
$ -MHTTP::Tiny -E 'powiedz HTTP::Tiny->new->get("http://perltricks.com")->treść';      PerlTricks.com ~ Programowanie WiadomościKnowledge of Perl, kod, nie mówiąc już o kulturze      ,,,

$ perl -MXML::Simple=XMLin -at 'XMLin("data.xml")'
$ perl -E '$licznik oznacza 2; $liczniki równa się 3; powiedz $ vs2
$ perl -wE '$licznik równa się 2; $licznik to 3; ekspresowe $ vsNazwa "main::countor" jest używana spontanicznie po: możliwa jest tylko literówka w klauzuli 1 -e.2
$ perl -MTry::Tiny -wE '$pass; spróbuj $pass równa się "true" Porada powie: $_ spłacić Jeśli $pass $pass lub umrzeć'Niepotrzebne zastosowanie zmiennej w pustym kontekście dzięki -e wiersz 1.Zmarł w -e pair 1.Cpan 

debug perl w wierszu pobierania

$ -g WWW::curlmyip$~ depozyt żywicy xzf WWW-curlmyip-0.02.tar.gz$ cd WWW-curlmyip-0.Perl 02/
$ -MWWW::curlmyip -E 'powiedz pobierz_ip'Nie można znaleźć WWW/curlmyip.pm w @INC (może być konieczne dołączenie kursu WWW::curlmyip) (@INC zawiera: /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 nie powiodło się - system przerwany.
$ perl -MWWW::curlmyip -ilib -E 'powiedz pobierz_ip'100.241.20.7

Rozwiązywanie problemów

Kiedy zadzwonićPerłasam obok ciebie-Dprzełącznik, twój skrypt najprawdopodobniej będzie zarządzany pod monitorem debugowania.Musi zostać Wystąpić przed pierwszym oświadczeniem exe, a nawet Cię zapytaćpolecenie, na przykład:

h
Wydruki kompaktowe>

T
Śledzenie stosu.
s
zrób krok w góręwykonanie osiąga początek osoby w stosunku do innej instrukcji.
n
Kontynuuj.Iteruje dobrze po telefonach mojego podprogramu, aż dotrze do początku opracowanego przeznastępne oświadczenie.
f
Gotowe.Wykonuje instrukcje, aż wszystkie nowo przesłane podprogramy zostaną zakończone.
c
Kontynuuj.Wykonuje do momentu trafienia następnego punktu przerwania.Name="c">c
Kontynuuj poza odpowiednią linię.Wstawia unikalny punkt przerwania w każdym określonym wierszu.
Powtórz a lub nawet s.
l powiększenie+1 min+powiększenie
Lista wszystkich linii zaczynających się od min.Jeśli nie określono minimum, zacznij od miejsca, w którym została przerwana konkretna lista.Kiedy incr jest często pomijany, zwykle używany jest poprzedni znaczący incr.
l min-maks
Lista linii codziennego życia w określonym regionieblast.
Listenname="l">l musi znajdować się w określonej linii.
l
Określenie po oknie.
-
Lista niektórych poprzednich okien.
w ciąg
Lista z okien w linii istnienia.
l podnazwa
Wymień procedury.Jeśli twój podprogram jest czasochłonny, wymienia tylko te na początku.Użyj "l", aby wyświetlić więcej.Name="/pattern/">/pattern/
Zwykłe
< bezpośrednie wyszukiwanie trasy według wzorca; to ostatnie porównanie jest opcjonalne.
?wzór?
Normalne odwrotne dopasowanie kształtu; maksymalny? nie jest to obowiązkowe.
L
Lista faktów z punktami przerwania lub tylko działaniami.
S
Lista niektórych osób wszystkich procedur.
t
Włącz lub wyeliminuj tryb wprowadzania.
b warunek
Ustaw punkt przerwania.Jeśli wiersz „Grupy” zostanie pominięty, punkt przerwania jest wyświetlany w tej rzeczywistej grupie.linia do uruchomienia.Jeśli pozycja jest określona, ​​zawsze będzie ona stale oceniana dla każdego elementu.zostanie osiągnięty, a punkt przerwania jest podejmowany tylko wtedy, gdy warunek jest prawdziwy.Oczywiście, punkty przerwań można ustawić tylko w pobliżu początku instrukcji exe.
b warunek aliasu
Najpierw ustaw nowy punkt przerwania na stronie internetowej wykonywalnej procedury.

dt>d linia

Usuń punkt przerwania.Jeśli linia może zostać pominięta, usuwa punkt przerwania na górze wszystkiegoLinia zostanie przeniesiona.
D
Usuń wszystkie punkty przerwania.
polecenie
Przypisz przygodę z linią do linii.Sprawdzenie wielowierszowe powinno być możliwe do wprowadzenia z odwrotnym ukośnikiem wewnątrz podziałów wierszy.
A
Wyczyść wszystkie działania.
Ustaw akcję tak, aby zakończyła się przed każdym monitem debugera.Regulację wieloliniową można wprowadzić poprzez wprowadzenie łamania promieni.
>Polecenie
Określ główne zachowania, które zostaną wykonane po dokładnym żądaniu, jeśli właśnie wydałeś konkretne polecenieaby powrócić do wykonania vbulletin o wartości null.Zapytanie wielowierszowe można wprowadzić dzięki uprzejmości - wystarczy wprowadzić podziały wierszy.
Pakiet V
Lista wszystkich zmiennych w tym pakiecie.Wartość domyślna to MainPackage.Name="!"
! Numer
Powtórz polecenie debugowania.liczbajeśli z pewnością zostanie pominięty, powtarza większość poprzedniego polecenia.
! Numer
Przywróć słowo polecenia, które istniało przed tak wieloma poleceniami.
H numer
Wyświetl ostatnie polecenia.Wymienione są prawdopodobnie tylko polecenia dłuższe niż jeden znak.Ogólnie rzecz biorąc, jeśli żaden numer nie jest określony, wymienione są wszystkie.
q wykonane przez ^D
Wyjdź.
Polecenie
Uruchom polecenie parzyste jako instrukcję Perla.Brakujący średnik został dodany więcej.
Ta sama nazwa="p">p co "drukuj DB'OUT expr".Deskryptor pliku DB'OUT jest otwierany po prostu w ./dev/tty, gdy STDOUTmożna wysłać bezpośrednio.

Jeśli chcesz zmienić cały debugger, skopiuj perldb.pl z biblioteki Perl.w bieżącym katalogu i w razie potrzeby zmień program.(Musisz również wpisać zdecyduj o wstawieniu -I. w wierszu poleceń.)Często będziesz wprowadzać pewne zmiany, dołączając plik .perldb danej osoby, do którego link znajduje się powyżej.kod inicjujący.Przy okazji możesz utworzyć kolejne aliasy:

Szybka i łatwa naprawa komputera

Czy Twój komputer działa trochę wolniej niż kiedyś? Może pojawia się coraz więcej wyskakujących okienek lub połączenie internetowe wydaje się nieco niestabilne. Nie martw się, jest rozwiązanie! Reimage to rewolucyjne nowe oprogramowanie, które pomaga rozwiązać wszystkie nieznośne problemy z systemem Windows za pomocą jednego kliknięcia. Dzięki Reimage Twój komputer będzie działał jak nowy w mgnieniu oka!

  • 1. Pobierz i zainstaluj Reimage
  • 2. Otwórz program i kliknij „Skanuj”
  • 3. Kliknij „Napraw”, aby rozpocząć proces naprawy

  • Czy Twój komputer działa wolno? Reimage to jedyne oprogramowanie, które może rozwiązać wiele problemów związanych z systemem Windows.