./lib においた自作 .pm ファイルを読むような perl スクリプトを書くとなると
とかって書くわけですが、cron から起動したりするとカレントが $HOME になるために、上記では旨く ./lib/*.pm を読んでくれません。かといって直に、絶対パスを直にプログラム中に書くと、今度はテスト用のディレクトリからから本番用のディレクトリに切り替えるときにそのパスを変更しなくてはいけなくてちょっとややこしいことになってきます。余計な心労は負いたくありません。
で、そこで解決策をググっていたところ FindBin というモジュールがあることを知りました。FindBin を使ってこの問題をクリアするには、上記のコードを
のように変更すれば、万事 OK。 $FindBin::RealBin がスクリプトのあるディレクトリへの絶対パスを示します。
便利ですね。












最近のコメント