Cambia il nome della cartella in cui è memorizzato il file jmpCiao a tutti,
Sto facendo un sacco di automazione dall'input dell'utente.
Cosa succede se la directory C:\Files\A\B files\data.jmp esiste e attualmente sto ricevendo la funzione Get default directory() per ottenere l'intero percorso ( C:\File\A\B file\) mentre memorizzo lo script nella stessa cartella.
Voglio cambiare i file della cartella B in B_files. È possibile?
Grazie.
Re: Modificare il nome della cartella in cui è memorizzato il file jmpQueste sono risorse straordinarie. Grazie Craig.
Grazie txnelson per avermi aiutato anche inizialmente.Re: Modificare il nome della cartella in cui è memorizzato il file jmpLe espressioni regolari sono ottime per svolgere questo tipo di attività. Ci sono molte risorse regex sul web e almeno questo e questo Ho postato nella community. Nell'esempio sopra, puoi confrontare ultimo == fisso per determinare se è necessario rinominare la directory.
Non capisco cosa vuoi fare con un indirizzo IP. Non è possibile utilizzare le funzioni di ridenominazione di JMP per eseguire qualsiasi operazione su un URL. Rinomina funziona solo su un disco a cui hai accesso in lettura/scrittura.
Tuttavia, puoi manipolare un URL (usando regex o altre funzioni JSL) prima di usarlo. Ad esempio, puoi analizzare l'URL di questa pagina e ricostruirlo. Il JSL potrebbe usare regex, o parole(URL,"/") o altre funzioni di stringa.
URL="community.jmp.com/t5/Discussions/Change-folder-name-where-the-jmp-file-is-stored/m-p/45142";
w = words(URL,"/");
{"community.jmp.com", "t5", "Discussioni",
"Cambia-nome-cartella-dove-è-memorizzato-il-file-jmp", "mp", "45142"}
Potresti manipolare quell'elenco e ricostruire la stringa
w[5] = "xyzzy";<BR />concatitems( w ,"/");
"community.jmp.com/t5/Discussions/Cambia-nome-cartella-dove-è-memorizzato-il-file-jmp/xyzzy/45142"
Questo è un URL non trovato di 404 pagine, ovviamente.
Re: Modificare il nome della cartella in cui è memorizzato il file jmpSono d'accordo con il tuo punto Craige. Sei tu, sto cercando di trovare un modo per ignorare lo spazio. Ho il problema se provo a eseguire la posizione con un indirizzo IP. Se lo apro normalmente non ho il problema.Re: Modificare il nome della cartella in cui è memorizzato il file jmppiù pensieri: questa potrebbe non essere una buona idea, specialmente se stai rinominando la directory corrente da sotto l'utente. Rende difficile salvare lo script appena aperto dalla directory corrente. Inoltre, la ridenominazione fallirà se l'utente crea nuovamente "B Files" quando B_Files esiste da un'esecuzione precedente. Assicurati di testare il codice di ritorno dalla funzione di rinomina!
Re: Modificare il nome della cartella in cui è memorizzato il file jmpEcco alcune espressioni regolari per aiutare con il cambio di nome
old = Get Default Directory(); // lucky it uses posix style forward slash...
Print( old ); // "/C:/Users/v1/Desktop/B Files/"
last = Regex( old, "([^/]+)/?$", "\1" ); // "B Files"
fixed = Regex( last, "[ @$]", "_", GLOBALREPLACE ); // "B_Files"
Rename Directory( old, fixed );
La prima espressione regolare isola la sottodirectory finale. La seconda regex cambia spazio, @ e $ per sottolineare. La prima regex avrebbe bisogno di una brutta fuga se il percorso utilizzasse barre rovesciate. La prima espressione regolare dice "trova una sequenza di uno o più caratteri che non sono /, seguiti da un facoltativo /, seguito dalla fine della stringa". Le parentesi formano il backref \1 per il risultato. La seconda regex usa una classe di caratteri in [ ] nel caso in cui tu abbia più di un carattere speciale da rimuovere,
Re: Modificare il nome della cartella in cui è memorizzato il file jmpLa funzione Rename File() consente di modificare il nome del file. Rispetterà gli spazi vuoti all'interno dei nomi, così come una funzione Open(). Cosa mi manca?
Re: Modificare il nome della cartella in cui è memorizzato il file jmpGrazie txnelson per il suggerimento. Sono tornato indietro e ho controllato. Sembra che non riesco a cambiare il nome del file. C'è un modo per ignorare lo spazio nel chiamare o aprire il file dalla directory?Re: Modificare il nome della cartella in cui è memorizzato il file jmpEcco l'esempio preso direttamente dallo Scripting Index per
Aiuto==>Indice di scripting==>Funzioni==>Rinomina directory
Names Default To Here( 1 );
Delete Directory( "$TEMP/subD" );
Delete Directory( "$TEMP/Loss Function Templates" );
rc0 = Copy Directory(
"$SAMPLE_DATA/Loss Function Templates",
"$TEMP"
);
rc1 =
Rename Directory(
"$TEMP/Loss Function Templates",
"subD" /* NO PATH */
);
rc2 =
Directory Exists( "$TEMP/Loss Function Templates" );
rc3 = Directory Exists( "$TEMP/subD" );
rc4 = Delete Directory( "$TEMP/subD" );
rc5 = Directory Exists( "$TEMP/subD" );
Char( rc0 ) || " " || Char( rc1 ) || " " ||
Char( rc2 ) || " " || Char( rc3 ) || " " ||
Char( rc4 ) || " " || Char( rc5 );/* 1 1 0 1 1 0 */