In case of Java, we can get the path separator using
System.getProperty("path.separator");
Is there a similar way in Perl? All I want to do is to find a dir, immediate sub directory.
Say I am being given two arguments $a
and $b
; I am splitting the first one based on the path separator and joining it again except the last fragment and comparing with the second argument.
The problem is my code has to be generic and for that I need to know whats the system dependent path separator is?
You should not form file paths by hand - instead use File::Spec module:
($volume, $directories,$file) = File::Spec->splitpath( $path );
@dirs = File::Spec->splitdir( $directories );
$path = File::Spec->catdir( @directories );
$path = File::Spec->catfile( @directories, $filename );