|
| Liste over undermapper Fra : Christian Dannesboe |
Dato : 28-11-00 01:02 |
|
Jeg kan ikke få perl til at liste alle de undermapper der er ved en
givet lokation
fx /home/mig/
Jeg kan med "system ls -l /home/mig/ | grep dwr" få alle mapperne frem,
men jeg kan ikke finde ud af at få svaret tilbage..
Er der nogle der kan hjælpe
Christian@Dannesboe.dk
| |
Thomas Bjørn Anderse~ (28-11-2000)
| Kommentar Fra : Thomas Bjørn Anderse~ |
Dato : 28-11-00 01:06 |
|
Christian Dannesboe <Christian@Dannesboe.dk> writes:
> Jeg kan ikke få perl til at liste alle de undermapper der er ved en
> givet lokation
>
> fx /home/mig/
>
> Jeg kan med "system ls -l /home/mig/ | grep dwr" få alle mapperne frem,
> men jeg kan ikke finde ud af at få svaret tilbage..
Læs perldoc -f readdir og brug så -d testen som beskrevet i perldoc
perlfunc.
Thomas
--
Thomas Bjorn Andersen, bjorn@daimi.au.dk
+++ATH
| |
wojci (28-11-2000)
| Kommentar Fra : wojci |
Dato : 28-11-00 12:44 |
|
In article <3A22F5EE.879A68E3@Dannesboe.dk>, "Christian Dannesboe"
<Christian@dannesboe.dk> wrote:
> Jeg kan ikke få perl til at liste alle de undermapper der er ved en
> givet lokation
>
> fx /home/mig/
>
> Jeg kan med "system ls -l /home/mig/ | grep dwr" få alle mapperne frem,
> men jeg kan ikke finde ud af at få svaret tilbage..
>
> Er der nogle der kan hjælpe
>
> Christian@Dannesboe.dk
Jeg bruger dette her:"
sub get_dir {
my $dirname = shift(@_);
opendir DIR, $dirname or return ("null");
@files=grep !/^\./, readdir(DIR);
return @files;
} # get_dir
"
til at få selve listingen frem. Derefter kan du tjekke om hvad er en
fil/link/katalog osv.
Man kunne diskutere hvor smart det er :)
--
/wojci
wojci at wojci dot dk
| |
Peter J. Acklam (28-11-2000)
| Kommentar Fra : Peter J. Acklam |
Dato : 28-11-00 14:23 |
|
"wojci" <wojci@wojci.dk> writes:
> Jeg bruger dette her:"
> sub get_dir {
> my $dirname = shift(@_);
> opendir DIR, $dirname or return ("null");
> @files=grep !/^\./, readdir(DIR);
^^^^^^
Hvorfor bruker du denne? Den vil jo ta bort filer som .emacs,
..cshrc, .history, .envir, ...
Peter
--
$\="\n";$_='The quick brown fox jumps over the lazy dog';print +(split
//)[20,5,24,31,3,36,14,12,31,1,2,11,9,23,33,29,35,15,32,36,7,8,28,29];
| |
wojci (28-11-2000)
| Kommentar Fra : wojci |
Dato : 28-11-00 21:15 |
|
In article <wkaeakb58q.fsf@math.uio.no>, jacklam@math.uio.no wrote:
> "wojci" <wojci@wojci.dk> writes:
>
>> Jeg bruger dette her:" sub get_dir {
>> my $dirname = shift(@_); opendir DIR, $dirname or return ("null");
>> @files=grep !/^\./, readdir(DIR);
> ^^^^^^
>
> Hvorfor bruker du denne? Den vil jo ta bort filer som .emacs,
> .cshrc, .history, .envir, ...
>
> Peter
>
Korrekt.
Det stammer fra et sted hvor dot-filer ikke skal være med :)
Det var bare et eksempel...
--
/wojci
wojci at wojci dot dk
| |
Peter J. Acklam (30-11-2000)
| Kommentar Fra : Peter J. Acklam |
Dato : 30-11-00 12:11 |
|
"wojci" <wojci@wojci.dk> writes:
> @files=grep !/^\./, readdir(DIR);
> ^^^^^^
jacklam@math.uio.no wrote:
> Hvorfor bruker du denne? Den vil jo ta bort filer som .emacs,
> .cshrc, .history, .envir, ...
"wojci" <wojci@wojci.dk> writes:
>
> Korrekt.
> Det stammer fra et sted hvor dot-filer ikke skal være med :)
> Det var bare et eksempel...
Ok. Jeg synes det så litt rart ut, så jeg ville spørre for
sikkerhets skyld...
Peter
--
$\="\n";$_='The quick brown fox jumps over the lazy dog';print +(split
//)[20,5,24,31,3,36,14,12,31,1,2,11,9,23,33,29,35,15,32,36,7,8,28,29];
| |
Peter J. Acklam (28-11-2000)
| Kommentar Fra : Peter J. Acklam |
Dato : 28-11-00 14:21 |
|
Christian Dannesboe <Christian@Dannesboe.dk> writes:
> Jeg kan ikke få perl til at liste alle de undermapper der er ved en
> givet lokation
>
> fx /home/mig/
>
> Jeg kan med "system ls -l /home/mig/ | grep dwr" få alle mapperne frem,
> men jeg kan ikke finde ud af at få svaret tilbage..
use DirHandle;
my $dir = '/home/mig';
my @subdirs = grep { -d "$dir/$_" } DirHandle->new($dir)->read();
Peter
--
$\="\n";$_='The quick brown fox jumps over the lazy dog';print +(split
//)[20,5,24,31,3,36,14,12,31,1,2,11,9,23,33,29,35,15,32,36,7,8,28,29];
| |
|
|