Nowe posty

Autor Wątek: Perl - operacje na plikach  (Przeczytany 6885 razy)

Drza

  • Gość
Perl - operacje na plikach
« dnia: 2008-06-05, 08:35:42 »
Witam. Walczę z zadaniem i potrzebuję pomocy . Chcę wyprodukować N plików o losowych nazwach 10-znakowych w katalogu
bieżącym.
Na razie mam taką postać, ale mam problem jak wylosować nazwę 10 znakową i potem wstawić do funkcji sysopen. Proszę o jakieś rady.

#!/usr/bin/perl -w

use warnings;
use strict;

$N = 0;

#zabezpieczenie przed pustym N

do {
   print "Podaj N \\n";
   our $N = ;
   } while ($N != 0)

for ($i = 0; $i <= $N; ++$i)
   {
   # tu tworze plik i nie jestem pewien czy dobrze
   sysopen (UCHWYT, 'nazwa.txt', O_RDWR|O_EXCL|O_CREAT, 0755);
   }

kapron

  • Gość
Perl - operacje na plikach
« Odpowiedź #1 dnia: 2008-07-03, 10:21:07 »
generowanie nazwy:

#! /usr/bin/perl

my @chars=('0'..'9', 'a'..'z', 'A'..'Z');
my $filename;

foreach(1..10) {
        $filename.=$chars[rand @chars];
}

print $filename;
print "\\n";

Offline ultr

  • Users
  • Guru
  • *****
  • Wiadomości: 1177
    • Zobacz profil
Perl - operacje na plikach
« Odpowiedź #2 dnia: 2008-07-03, 13:26:04 »
> while ($N != 0)

A nie czasem:

while( ( ! isnum( $N ) ) || ( $N <= 0 ) )

?