in reply to Re^2: List EXE_FILES installed by CPAN (FIXED!)
in thread List EXE_FILES installed by CPAN

> Well /bin shows everything

Well yes, but

'~/perl5/bin' ne '/bin'

In fact,

$ echo $PERL_LOCAL_LIB_ROOT /home/choroba/perl5

($q=q:Sq=~/;[c](.)(.)/;chr(-||-|5+lengthSq)`"S|oS2"`map{chr |+ord }map{substrSq`S_+|`|}3E|-|`7**2-3:)=~y+S|`+$1,++print+eval$q,q,a,

Replies are listed 'Best First'.
Re^4: List EXE_FILES installed by Perl!
by usemodperl (Beadle) on Jun 25, 2018 at 02:33 UTC
    Well yes, but
    
    '~/perl5/bin' ne '/bin'
    
    What does that mean?
    In fact,
    
    $ echo $PERL_LOCAL_LIB_ROOT 
    /home/choroba/perl5
    
    My environment doesn't have that variable. How does it help isolate executables from CPAN? I guess it does help isolate core perl programs, like this:
    #!/usr/bin/perl -l use strict; use warnings; # List executables installed by Perl core # List CPAN: https://perlmonks.org/?node_id=1217338 (my $bin = $^X) =~ s/.perl$//; chomp(my @perl = `ls -l $bin`); s/.*\s(\S+)$/$1/ for @perl; # filename shift @perl; chomp($_ = join "", `perldoc -uT perllocal`); my @temp = (/EXE_FILES:\s([^>]+)/sg); my @cpan = (); for (@temp) { my @x = split /\s+/; # filename(s) s/^\S+\/// for @x; # remove path push @cpan, @x; } my $perl = { map {$_=>1} @perl }; my $cpan = { map {$_=>1} @cpan }; my $core = {}; for (keys %$perl) { $core->{$_}++ unless $cpan->{$_} } print $_ for sort keys %$core;
    STOP REINVENTING WHEELS, START BUILDING SPACE ROCKETS!CPAN 🐪