-----邮件原件-----
发件人: Chris Charley [mailto:char...@pulsenet.com] 
发送时间: 2009年11月19日 5:21
收件人: beginners@perl.org
主题: Re: mkdir in the mounted partition,please help me,thanks


----- Original Message ----- 
From: ""Chris Charley"" <char...@pulsenet.com>
Newsgroups: perl.beginners
To: <beginners@perl.org>
Sent: Wednesday, November 18, 2009 12:39 PM
Subject: Re: mkdir in the mounted partition,please help me,thanks


>
> ----- Original Message ----- 
> From: ""gaochong"" <zjgaoch...@gmail.com>
> Newsgroups: perl.beginners
> To: <beginners@perl.org>
> Sent: Tuesday, November 17, 2009 6:41 AM
> Subject: mkdir in the mounted partition,please help me,thanks

[snip some content]


>
> As to a better way, here is another way (without reconstructing the @list 
> array).
>
> #!/usr/bin/perl
> use strict;
> use warnings;
> use File::Path; # uses 'mkpath' to make new included dirs in a path
>
> my ($i, @p) = (-1, 3 .. 9);
>
> foreach my $f ("FA00000001".."FA00002000") {
> my $p = $p[++$i % @p];

There is really no need for the @p array. You could calculate $p like:

my $p = ++$i % 7 + 3;

In this example this can do ,but I have the following partitions and will
not finish .so have to using @list and reconstruct it ,and you ?
文件系统              容量  已用 可用 已用% 挂载点
/dev/sda1              29G  4.6G   23G  17% /
/dev/sda3             235G  3.7G  219G   2% /data
tmpfs                 2.0G     0  2.0G   0% /dev/shm
/dev/sdb1             1.8T  933G  749G  56% /savedata/data01
/dev/sdc1             1.8T  1.2T  456G  73% /savedata/data02
/dev/sdd1             1.8T  1.1T  576G  66% /savedata/data03
/dev/sde1             1.8T  1.1T  647G  62% /savedata/data04
/dev/sdf1             1.8T  1.2T  551G  68% /savedata/data05
/dev/sdg1             1.2T  442G  707G  39% /savedata/data06
/dev/sdh1             1.8T  699G  984G  42% /savedata/data11
/dev/sdi1             1.8T  940G  743G  56% /savedata/data12
/dev/sdj1             1.8T  962G  720G  58% /savedata/data13
/dev/sdk1             1.8T  937G  746G  56% /savedata/data14
/dev/sdl1             1.8T  1.3T  445G  74% /savedata/data15
/dev/sdm1             1.2T  612G  537G  54% /savedata/data16
/dev/sdn1             1.8T  1.2T  465G  73% /savedata/data21
/dev/sdo1             1.8T  1.2T  458G  73% /savedata/data22
/dev/sdp1             1.8T  874G  808G  52% /savedata/data23
/dev/sdq1             1.8T 1007G  675G  60% /savedata/data24
/dev/sdr1             1.8T  1.4T  320G  81% /savedata/data25
/dev/sds1             1.2T  609G  541G  53% /savedata/data26
/dev/sdt1             1.7T  1.1T  523G  68% /savedata/data31


> #mkpath(["/data$p/NRU/$f"], 0, 0755) unless -e "/data$p/NRU/$f";
> #symlink "/data$p/NRU/$f","/usr/local/Titan/NRU/$f"
> # or warn"symlink /data$p/NRU/$f err:$!";
> print "/data$p/NRU/$f\n";
> }
>
> This example uses the 'mkpath()' function which *will* construct the 
> entire path (unlike the mkdir() function). mkpath() is included in the 
> base perl 5.8 distribution, so it may be available to you.

YES,mkpath() function of File::Path is a good idea and I will try it .


>
> Chris 


-- 
To unsubscribe, e-mail: beginners-unsubscr...@perl.org
For additional commands, e-mail: beginners-h...@perl.org
http://learn.perl.org/



--
To unsubscribe, e-mail: beginners-unsubscr...@perl.org
For additional commands, e-mail: beginners-h...@perl.org
http://learn.perl.org/


Reply via email to