0

ディレクトリパスがあります:

my $temp = "/a/b/c/d";
my $upDirectory = dirname( $temp );

これは「/a/b/c」を返します。しかし、「c」だけが必要です。それを文字列と比較して、正しいディレクトリかどうかを判断する必要があります。

「/」で分割する以外に方法はありますか?これは使いたくない。Perl コードは、複数のプラットフォームで使用する必要があります。splitdir は役に立ちますか?

4

2 に答える 2

5

もちろん、それを行うには多くの方法がありますが、他のプラットフォームへの移植性が主な関心事である場合は、File::Specがおそらく妥当な賭けです。splitpathとを探しsplitdirます。

于 2012-08-16T06:37:58.237 に答える
1

必須のPath::Class解決策:

use Path::Class qw(dir);
dir('/a/b/c/d')->parent->dir_list(-1)
# expression returns 'c'
于 2012-08-16T10:46:46.890 に答える