19.13. Śledzenie przebiegu skryptów

Problem

Nie możemy ustalić, jak przebiega praca skryptu oraz dlaczego nie dostarcza spodziewanych wyników.

Rozwiązanie

W początkowej części uruchamianego skryptu należy dodać instrukcję set –x. Można również włączyć mechanizm debugowania (xtrace) przed problematycznym fragmentem kodu (za pomocą polecenia set –x) i wyłączyć go po wykonaniu podejrzanej sekcji (za pomocą polecenia set +x). Niekiedy przy tej okazji zasadne okazuje się wprowadzenie zmian w znaku zgłoszenia $PS4 (zgodnie z informacjami zawartymi w „16.2. Dostosowanie znaku zachęty”). Mechanizm debugowania kodu xtrace działa również w powłokach interaktywnych (co również zostało opisane w „16.2. Dostosowanie znaku zachęty”). Oto przykład skryptu, który ...

Get Bash. Receptury now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.