X
Xah Lee
Split File Fullpath Into Parts
Xah Lee, 20051016
Often, we are given a file fullpath and we need to split it into the
directory name and file name. The file name is often split into a core
part and a extension part. For example:
'/Users/t/web/perl-python/I_Love_You.html'
becomes
'/Users/t/web/perl-python/' (directory name)
'I_Love_You' (file's base name)
'.html' (file's “extensionâ€)
Depending on the language, some language will remove the trailing slash
after the dir name, and some will omit the dot before the suffix.
In Python, to split a full path into parts is done with the os.path
module. Example:
# python
import os.path
myPath = '/Users/t/web/perl-python/I_Love_You.html'
(dirName, fileName) = os.path.split(myPath)
(fileBaseName, fileExtension)=os.path.splitext(fileName)
print dirName # /Users/t/web/perl-python
print fileName # I_Love_You.html
print fileBaseName # I_Love_You
print fileExtension # .html
The official doc of the os.path module is at:
http://www.python.org/doc/2.4.1/lib/module-os.path.html
In Perl, spliting a full path into parts is done like this:
# perl
use File::Basename;
$myPath = '/Users/t/web/perl-python/I_Love_You.html';
($fileBaseName, $dirName, $fileExtension) = fileparse($myPath,
('\.html') );
print $fileBaseName, "\n"; # I_Love_You
print $dirName, "\n"; # /Users/t/web/perl-python/
print $fileExtension, "\n"; # .html
Note: the second argument to fileparse() is a list of regex. In
particular, you need to escape the dot.
For the official doc, type in command line: “perldoc File:athâ€.
------
This post is archived at
http://xahlee.org/perl-python/split_fullpath.html
Schemers, a scsh version will be appreciated.
Xah
(e-mail address removed)
∑ http://xahlee.org/
Xah Lee, 20051016
Often, we are given a file fullpath and we need to split it into the
directory name and file name. The file name is often split into a core
part and a extension part. For example:
'/Users/t/web/perl-python/I_Love_You.html'
becomes
'/Users/t/web/perl-python/' (directory name)
'I_Love_You' (file's base name)
'.html' (file's “extensionâ€)
Depending on the language, some language will remove the trailing slash
after the dir name, and some will omit the dot before the suffix.
In Python, to split a full path into parts is done with the os.path
module. Example:
# python
import os.path
myPath = '/Users/t/web/perl-python/I_Love_You.html'
(dirName, fileName) = os.path.split(myPath)
(fileBaseName, fileExtension)=os.path.splitext(fileName)
print dirName # /Users/t/web/perl-python
print fileName # I_Love_You.html
print fileBaseName # I_Love_You
print fileExtension # .html
The official doc of the os.path module is at:
http://www.python.org/doc/2.4.1/lib/module-os.path.html
In Perl, spliting a full path into parts is done like this:
# perl
use File::Basename;
$myPath = '/Users/t/web/perl-python/I_Love_You.html';
($fileBaseName, $dirName, $fileExtension) = fileparse($myPath,
('\.html') );
print $fileBaseName, "\n"; # I_Love_You
print $dirName, "\n"; # /Users/t/web/perl-python/
print $fileExtension, "\n"; # .html
Note: the second argument to fileparse() is a list of regex. In
particular, you need to escape the dot.
For the official doc, type in command line: “perldoc File:athâ€.
------
This post is archived at
http://xahlee.org/perl-python/split_fullpath.html
Schemers, a scsh version will be appreciated.
Xah
(e-mail address removed)
∑ http://xahlee.org/