Je cherche à obtenir le chemin sans le nom de fichier dans Windows par Perl
J’ai le chemin complet comme ceci:
c:\My_Designs\ipcore_script\test\src\IP_CORE\mux\sus.do
Je n’ai besoin que du chemin et je veux enlever le nom du fichier comme:
c:\My_Designs\ipcore_script\test\src\IP_CORE\mux
Utilisez File :: Basename
> perl -MFile::Basename -wE "say dirname(qq(c:/perl/bin/perl.exe));" c:/perl/bin
Vous pouvez également utiliser Path :: Class :
#!/usr/bin/env perl use ssortingct; use warnings; use Path::Class; my $file = file('c:\My_Designs\ipcore_script\test\src\IP_CORE\mux\sus.do'); print $file->parent, "\n";
Sortie:
C: \ Mes_Designs \ ipcore_script \ test \ src \ IP_CORE \ mux
Vous pouvez aussi essayer ceci
$path='c:\My_Designs\ipcore_script\test\src\IP_CORE\mux\sus.do'; my $pathname=substr($path, 0, rindex($path,"\\")); Result: c:\My_Designs\ipcore_script\test\src\IP_CORE\mux