PDA

View Full Version : [perl] creare file in directory


Fede865
08-11-2010, 09:53
Salve a tutti.. sto svolgendo un esercizio dove mi chiede di leggere da un file: nome cognome e matricola, creare due cartelle, una cognome scritto in maiuscolo e una nome scritta in minuscolo.
Poi per ogni cifra di matricola, se la cifra è pari creare il file corrispondente all'ordine della cifra nella cartella nome, altrimenti in cognome.
E ogni file deve contenere la cifra di matricola.
ESEMPIO: leggo da un file Nome Cognome 5674
creo la cartella COGNOME
creo la cartella nome
all'interno di cognome dovrò creare i file: 1.txt(contenente 5), 3.txt (contenente 7);
all'interno di nome dovrò creare i file: 2.txt(contenente 6), 3.txt (contenente 4);

io non riesco a creare i file nelle corrispondenti cartelle...
la mia soluzione crea le cartelle e file fuori..
#! /usr/bin/perl
open(FILE,$ARGV[0]);
$_=<FILE>;
/(\w+)(\w+)([0-9]+)/;
@elementi=split(' ',$_);
$cognome=$elementi[0];
$nome=$elementi[1];
$matr=$elementi[2];
close FILE;

$cognome=uc($cognome);
qx{mkdir $cognome};

$cnome=lc($nome);
qx{mkdir $nome};

@cifra=split (//,$matr);

foreach $cifre (@cifra)
{
$i++;
if (($cifre%2)=~0)
{
`cd $nome`;

}
else
{
`cd $cognome`;

}

`touch $i.txt`;

open FILE2, ">$i.txt";
print FILE2 $cifre;

close FILE2;

}


AIUTATEMIII... grazie:)

Fede865
08-11-2010, 16:00
nessuno riesce ad aiutarmi.. penso sia un esercizio semplice ma mi sfugge qualcosa...:(

Fede865
09-11-2010, 08:23
mi sembra strano non aver ricevuto alcuna risposta.. forse non ho spiegato bene il problema???:confused:

Fede865
10-11-2010, 09:03
Ho risolto!
grazie cmq..