* Greg Wooledge <g...@wooledge.org> [22-05/28=Sa 17:11 -0400]: > [...] > #!/usr/bin/perl > use strict; use warnings; > [...] > open PATS, "<patterns.txt" || die "can't open patterns.txt"; > [...]
You need "or die", not "|| die", because of precedence: what you coded checks whether "<patterns.txt" is logically true (it is), whereas you wanted to check whether the result of open() is logically true. In this transcript, the number before the prompt-ending '$' is $?: -------------------------------- debian/pts/4 bash3 ~ 14:56 0$perl -e 'open "gweeblefleep" || die' debian/pts/4 bash3 ~ 14:57 0$perl -e 'open "gweeblefleep" or die' Died at -e line 1. debian/pts/4 bash3 ~ 14:57 2$ -------------------------------- -- Will Mengarini <sel...@eskimo.com> perl -le"print unpack '%C*',MENGARINI"