ricerca di una cartella.Ho un codice per accettare il nome della cartella come input. Ora voglio verificare se la cartella esiste in uno dei 2 percorsi (pathA e PathB).
Sono stato anche in grado di raggiungere questo obiettivo, ma la sfida è
Ho molte cartelle in questi 2 percorsi e non conosco il nome di questi in anticipo.
Ho provato ad usare
filelist=Files In Directory( path1, recursive);
ma questo non funziona per le cartelle.
Re: ricerca di una cartella.Necessaria una piccola modifica, ma grazie per questo! Ho quello di cui avevo bisogno
Re: ricerca di una cartella.certo, più o meno come questo pezzo non testato di JSL...
If( Is Directory( path || candidates[i] ),
Write( "\!n", path || candidates[i] ); // <<<<<< do something with a dir
descend( path || candidates[i] ); // optionally, recurse
, // else
Write( "\!n", path || candidates[i] ); // <<<<<< do something with a file
)
Potrebbe essere necessario utilizzare isFile(...) per assicurarsi che gli elementi siano effettivamente file e non altre cose strane che il sistema operativo potrebbe mostrarti.
Re: ricerca di una cartella.Il codice può essere modificato per includere anche i nomi dei file e le cartelle?
Grazie
Re: ricerca di una cartella.descend = Function( {path},
{candidates, i},
If( !Ends With( path, "/" ) & !Ends With( path, "\" ),
path = path || "/"
);
candidates = Files In Directory( path ); // not recursive
For( i = 1, i <= N Items( candidates ), i += 1,
If( Is Directory( path || candidates[i] ),
Write( "\!n", path || candidates[i] ); // <<<<<< do something
descend( path || candidates[i] ); // optionally, recurse
)
);
);
descend( "c:\program files" );Se non vuoi esplorare le sottodirectory, commenta la riga ricorsiva.
Re: ricerca di una cartella.Il tuo esempio di codice usa la sintassi sbagliata. Ecco un esempio della sintassi corretta:
Files In Directory( "$SAMPLE_DATA", Recursive( 1 ) );
Gli elementi nell'elenco che viene restituito sono percorsi completi, quindi puoi esaminarli per trovare le cartelle di destinazione.
Re: ricerca di una cartella.Questo ti aiuterà?
If( Directory Exists( "$SAMPLE_DATA/Loss Function Templates" ),
"ok",
"missing!"
);