Next: Getopt::Long | Previous: filetest |  | [Table of Contents] | [Index]

# FindBin

- NAME
- SYNOPSIS
- DESCRIPTION
- EXPORTABLE VARIABLES
- KNOWN BUGS
- AUTHORS
- COPYRIGHT

## NAME

FindBin - Locate directory of original perl script

## SYNOPSIS

     use FindBin;
     use lib "$FindBin::Bin/../lib";

     or

     use FindBin qw($Bin);
     use lib "$Bin/../lib";

## DESCRIPTION

Locates the full path to the script bin directory to allow the use of paths relative to the bin directory.

This allows a user to setup a directory tree for some software with directories <root>/bin and <root>/lib and then the above example will allow the use of modules in the lib directory without knowing where the software tree is installed.

If perl is invoked using the -e option or the perl script is read from `STDIN` then FindBin sets both `$Bin` and `$RealBin` to the current directory.

## EXPORTABLE VARIABLES

     $Bin         - path to bin directory from where script was invoked
     $Script      - basename of script from which perl was invoked
     $RealBin     - $Bin with all links resolved
     $RealScript  - $Script with all links resolved

## KNOWN BUGS

    if perl is invoked as

       perl filename

and filename does not have executable rights and a program called filename exists in the users `$ENV{PATH}` which satisfies both -x and -T then FindBin assumes that it was invoked via the `$ENV{PATH}`.

    Workaround is to invoke perl as

     perl ./filename

## AUTHORS

FindBin is supported as part of the core perl distribution. Please send bug reports to <`perlbug@perl.org`> using the perlbug program included with perl.

Graham Barr <`gbarr@pobox.com`> Nick Ing-Simmons <`nik@tiuk.ti.com`>

## COPYRIGHT

Copyright (c) 1995 Graham Barr & Nick Ing-Simmons. All rights reserved. This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

[Top] Generated by Pod::HTML 0.43 on Mon Mar 19 17:34:32 2001