You are viewing the version of this documentation from Perl blead. This is the main development branch of Perl. (git commit aa1c6e98da541a26043a44ce0b075903f910f0ad)
chdir EXPR
chdir FILEHANDLE
chdir DIRHANDLE
chdir

Changes the working directory to EXPR, if possible. If EXPR is omitted, changes to the directory specified by $ENV{HOME}, if set; if not, changes to the directory specified by $ENV{LOGDIR}. (Under VMS, the variable $ENV{'SYS$LOGIN'} is also checked, and used if it is set.) If neither is set, chdir does nothing and fails. It returns true on success, false otherwise. See the example under die.

On systems that support fchdir(2), you may pass a filehandle or directory handle as the argument. On systems that don't support fchdir(2), passing handles raises an exception.