This is the mail archive of the
cygwin@cygwin.com
mailing list for the Cygwin project.
Re: Useful Cygwinism #2: PATH Despacifier/Deduplicateifier
Hallo Cyber.Zombie,
Am Montag, 29. Juli 2002 um 06:18 schriebst du:
> A suggested improvement: Sometimes multiple paths are mount points to
> the same directory and won't get noticed until the path has been
> corrected. The following rework will further cleanup $PATH:
> #!/usr/bin/perl -w
> #
> use strict;
> my @pathcomps;
> my @pathcomps_out;
> my %comps_seen_already;
> @pathcomps = split(/:/, shift);
> for(@pathcomps) {
> my $path='"'.$_.'"';
> $path=qx(cygpath -u \$(cygpath -ws $path));
> $path=~tr/\n//d;
> if(!exists($comps_seen_already{$path})) {
> push(@pathcomps_out, $path);
> $comps_seen_already{$path}=1;
> }
> }
> print join(":", @pathcomps_out);
Where is the difference now to the first version?
>>=========================================================
>>#!/usr/bin/perl -w
>>use strict;
>>my @pathcomps;
>>my @pathcomps_out;
>>my %comps_seen_already;
>>@pathcomps = split(/:/, shift);
>>for(@pathcomps)
>>{
>> if(!exists($comps_seen_already{$_}))
>> {
>> my $path;
>> $path='"'.$_.'"';
>> $path=qx(cygpath -u \$(cygpath -ws $path));
>> $path=~tr/\n//d;
>> push(@pathcomps_out, $path);
>> }
>> $comps_seen_already{$_}=1;
>>}
>>print join(":", @pathcomps_out);
>>==========================================================
--
=^..^=
--
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Bug reporting: http://cygwin.com/bugs.html
Documentation: http://cygwin.com/docs.html
FAQ: http://cygwin.com/faq/