use Cwd;
$dir = cwd(); # get current working directory safest way
$dir = getcwd(); # like getcwd(3) or getwd(3)
$dir = fastcwd(); # faster and more dangerous
use Cwd 'chdir'; # override chdir; keep PWD up to date
chdir "/tmp";
print $ENV{PWD}; # prints "/tmp"
cwd()
gets the current working directory
using the most natural and safest form for the current
architecture. For most systems it is identical to
`pwd`
(but without
the trailing line terminator).
getcwd()
does the same thing by re-implementing
getcwd
(3)
or
getwd
(3) in Perl.
fastcwd()
looks the same as
getcwd()
, but runs faster.
It's also more dangerous because you might
chdir
out of a
directory that you can't
chdir
back into.
It is recommended that one of these functions be used in all code to ensure portability because the pwd program probably only exists on UNIX systems.
If you consistently override your
chdir
built-in function in all
packages of your program, then your
PWD
environment variable will
automatically be kept up to date. Otherwise, you shouldn't rely on it.
(Which means you probably shouldn't rely on it.)
[ Library Home | Perl in a Nutshell | Learning Perl | Learning Perl on Win32 | Programming Perl | Advanced Perl Programming | Perl Cookbook ]