Beefy Boxes and Bandwidth Generously Provided by pair Networks DiBona
go ahead... be a heretic
 
PerlMonks  

Re: Improve perlfaq5: How can I translate tildes (~) in a filename?

by adamk (Chaplain)
on Jun 11, 2008 at 01:51 UTC ( #691368=note: print w/ replies, xml ) Need Help??


in reply to Improve perlfaq5: How can I translate tildes (~) in a filename?

Something like this would probably do it (I haven't actually tested it)

require File::HomeDir; $filename =~ s/^~(\w+)/File::HomeDir->users_home("$1")/e; $filename =~ s/^~/File::HomeDir->my_home/e;


Comment on Re: Improve perlfaq5: How can I translate tildes (~) in a filename?
Download Code
Re^2: Improve perlfaq5: How can I translate tildes (~) in a filename?
by andreas1234567 (Vicar) on Jun 11, 2008 at 05:27 UTC
    Works fine for me:
    $ cat 691281.pl use strict; use warnings; use File::HomeDir; use Test::More; plan tests => 4; sub rep_tilde { my $filename = shift; $filename =~ s/^~(\w+)/File::HomeDir->users_home("$1")/e; $filename =~ s/^~/File::HomeDir->my_home/e; return $filename; } is(rep_tilde("~"), "/home/foo", "expect ~ -> /home/foo"); is(rep_tilde("~/"), "/home/foo/", "expect ~/ -> /home/foo/"); is(rep_tilde("~/.feeds"), "/home/foo/.feeds", "expect ~/.feeds -> /home/foo/.feeds"); is( rep_tilde("~/test/perl/perlmonks/691281/691281.pl"), "/home/foo/test/perl/perlmonks/691281/691281.pl", "expect ~/test/perl/perlmonks/691281/691281.pl " . "-> /home/foo/test/perl/perlmonks/691281/691281.pl" ); __END__ $ prove 691281.pl 691281....ok All tests successful. Files=1, Tests=4, 0 wallclock secs ( 0.05 cusr + 0.00 csys = 0.05 C +PU)
    --
    No matter how great and destructive your problems may seem now, remember, you've probably only seen the tip of them. [1]

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://691368]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others making s'mores by the fire in the courtyard of the Monastery: (14)
As of 2014-04-18 14:26 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    April first is:







    Results (469 votes), past polls