File :: Trova :: Parallel

File :: Trova :: Parallel consente di attraversare un numero di directory simili in parallelo.
Scarica ora

File :: Trova :: Parallel Classifica e riepilogo

Annuncio pubblicitario

  • Rating:
  • Licenza:
  • Perl Artistic License
  • Prezzo:
  • FREE
  • Nome editore:
  • Andy Armstrong
  • Sito web dell'editore:
  • http://search.cpan.org/~andya/

File :: Trova :: Parallel Tag


File :: Trova :: Parallel Descrizione

File :: Trova :: Parallel ti consente di attraversare un numero di directory simili in parallelo. File :: Trova :: Parallel consente di attraversare un numero di directory simili in parallelo.synopsis utilizzare il file :: Trova :: parallelo; My $ FFP = file :: Trova :: parallelo-> nuovo (QW (/ foo / bar)); Stampa "Unione: n"; My $ Union = $ ffp-> Any_iterator Stampa "$ _n" mentre $ _ = $ Union -> (); Stampa "Intersezione: n"; My $ inter = $ ffp-> all_iterator Stampa "$ _n" mentre $ _ = $ inter-> (); file :: find è lo strumento ideale per la scansione rapida di una singola directory. Ma a volte è bello essere in grado di eseguire operazioni su più directory simili in parallelo. Forse è necessario confrontare il contenuto di due directory o convertire i file condivisi in più di una directory in link hard.Questo modulo produce iteratori che visitano ciascun file e directory in un sindacato o nell'intersezione di un numero di directory. Hmm. Cosa significa? Dato due alberi di directory come questo Foo Foo / A FOO / B / C BAR FOO / D BAR / A BAR / B BAR / EYOU può scegliere di lavorare con l'intersezione delle due strutture di directory :. ./A ./bthat è le sottodirectory e i file che la foo e la barra condividono. Alternationaly è possibile lavorare con l'unione delle due strutture di directory :. ./A ./b ./b/c ./d ./estill non chiaro? Bene, se volessi fare una differenza ricorsiva sulle due directory che vorresti iperere il loro sindacato in modo da poter segnalare file presenti in foo ma mancano dal bar e vice-versa.it, d'altra parte, volevi scansionare il Directory e trova tutti i file che sono comuni a tutti voi che avresti iterano il loro incrocio e riceverai solo file e directory che erano presenti in tutte le directory in fase di scansione. L'Any_iterator e ALL_iterator sono costruiti su un metodo di scopo più generale: want_iterator. Se, ad esempio, si desidera effettuare collegamenti tra i file che si trovano in più di una directory che potresti ottenere il tuo iteratore come questo: My $ ITER = $ ffp-> want_iterator (2); l'apparentemente magia '2' riflette il fatto Che se hai intenzione di fare collegamenti hai bisogno di almeno due file. Non importa quante directory hai iTerating in parallelo vedrai solo file e directory che appaiono in almeno due di quelle directory.File :: Trova :: Parallel può eseguire la scansione di qualsiasi numero di directory allo stesso tempo. Ecco un esempio (sui sistemi UNIX) che restituisce l'elenco di tutti i file e le directory che sono contenuti in tutte le directory home. Utilizzare il file :: Glob ': Glob'; Usa il file :: Trova :: parallelo; My $ Trova = File :: Trova :: Parallel-> Nuovo (BSD_GLOB ('/ Home / *')); il mio @common = (); My $ ITER = $ Trova-> All_iterator; while (definito il mio $ obj = $ iter -> ()) {push @common, $ obj; } Stampa "I seguenti file sono comuni a" ", tutte le directory qui sotto / Home: N"; Stampa "$ _n" per @common; per un esempio concreto completo del suo utilizzo vedere i lncopies nella sottodirectory del cestino di questa distribuzione. Iteratoratol Iteratore restituito da Any_iterator, ALL_ITERATOR o WAND_ITATOR è un riferimento di codice. Chiamalo per ottenere il prossimo file o directory. Quando tutti i file e le directory sono stati restituiti, il iteratore restituirà UNDEF.Once creato da un Iteratore è indipendente dal file :: Trova :: oggetto parallelo che lo ha creato. Se l'oggetto esce dallo scopo e viene distrutto durante la vita dell'iteratore, funzionerà ancora normalmente. Potrebbe avere molti iteratori attivi per un singolo file :: Trova :: oggetto parallelo in qualsiasi momento. Requisiti: · Perl.


File :: Trova :: Parallel Software correlato