How to make perl throw an error for invalid or nonexistent files? -


using perl -p or -n flags or diamond operator on non-existent files not exit error:

$ perl -pe '' badfile || echo error can't open badfile: no such file or directory. $ $ perl -ne '' badfile || echo error can't open badfile: no such file or directory. $ $  perl -e 'print while <>' badfile || echo error can't open badfile: no such file or directory @ -e line 1. $ 

how can force perl throw error, not warning, when given bad file?

use local $sig{__warn__} = sub { die @_ }; set warning handler throw error.

$ # put handler code in begin block -p , -n: $ perl -pe 'begin{$sig{__warn__}=sub{die @_}}' badfile || echo error can't open badfile: no such file or directory. error $ $ perl -ne 'begin{$sig{__warn__}=sub{die @_}}' badfile || echo error can't open badfile: no such file or directory. error $ $ perl -e '$sig{__warn__}=sub{die @_}; print while <>;' badfile || echo error can't open badfile: no such file or directory @ -e line 1. error $  

Comments

Popular posts from this blog

python - TypeError: start must be a integer -

c# - DevExpress RepositoryItemComboBox BackColor property ignored -

django - Creating multiple model instances in DRF3 -