Programy interaktywne i nieinteraktywne
Czasem chcę, aby program sam ustalił, czy powinien wypisać jakieś wyniki albo poprosić użytkownika o dane wejściowe. Kiedy uruchamiam program z poziomu wiersza poleceń, chcę zobaczyć jakieś wyniki, żeby wiedzieć, co się dzieje. Kiedy program jest uruchamiany przez cron
(albo jakieś inne narzędzie do planowania zadań), nie powinien wypisywać wyników.
W rzeczywistości niekoniecznie chodzi o to, czy program jest interaktywny czy nie, ale o to, czy może wysyłać wyniki do terminalu lub pobierać z niego dane wejściowe.
Mogę sprawdzić STDOUT
, aby ustalić, czy wyniki programu trafią do terminalu. Test -t
informuje mnie, czy uchwyt pliku jest połączony z terminalem. Tak zwykle bywa, jeśli program został uruchomiony ...
Get Perl. Mistrzostwo w programowaniu 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.