Changer le nom du dossier où le fichier jmp est stockéSalut tout le monde,
Je fais un tas d'automatisation à partir de l'entrée de l'utilisateur.
Que se passe-t-il si le répertoire C:\Files\A\B files\data.jmp existe et que j'obtiens actuellement la fonction Get default directory() pour obtenir le chemin complet ( C:\Fichiers\A\B fichiers\) car je stocke le script dans le même dossier.
Je souhaite changer les fichiers du dossier B en B_files. Est-il possible?
Merci.
Re : Changer le nom du dossier où le fichier jmp est stockéCe sont des ressources incroyables. Merci Craige.
Merci txnelson de m'avoir aidé au début également.Re : Changer le nom du dossier où le fichier jmp est stockéLes expressions régulières sont idéales pour effectuer ce genre de tâches. Il existe de nombreuses ressources d'expressions régulières sur le Web et au moins ce et ce J'ai posté dans la communauté. Dans l'exemple ci-dessus, vous pourriez comparer dernier == corrigé pour déterminer si vous devez renommer le répertoire.
Je ne comprends pas ce que vous voulez faire avec une adresse IP. Vous ne pouvez pas utiliser les fonctions de renommage de JMP pour faire quoi que ce soit sur une URL. Renommer ne fonctionne que sur un disque auquel vous disposez d'un accès en lecture/écriture.
Cependant, vous pouvez manipuler une URL (à l'aide d'une expression régulière ou d'autres fonctions JSL) avant de l'utiliser. Par exemple, vous pouvez analyser l'URL de cette page et la reconstruire. Le JSL pourrait utiliser une expression régulière, ou mots(URL,"/") , ou d'autres fonctions de chaîne.
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", "Discussions",
"Modifier-le-nom-du-dossier-où-le-fichier-jmp-est-stocké", "mp", "45142"}
Vous pouvez manipuler cette liste et reconstruire la chaîne
w[5] = "xyzzy";<BR />concatitems( w ,"/");
"community.jmp.com/t5/Discussions/Change-folder-name-where-the-jmp-file-is-stored/xyzzy/45142"
Il s’agit bien sûr d’une URL introuvable de 404 pages.
Re : Changer le nom du dossier où le fichier jmp est stockéJe suis d'accord avec ton point Craige. C'est vous, j'essaie de trouver un moyen d'ignorer l'espace. J'ai le problème si j'essaie d'exécuter l'emplacement avec une adresse IP. Si je l'ouvre normalement, je n'ai pas de problème.Re : Changer le nom du dossier où le fichier jmp est stocképlus de réflexions : ce n'est peut-être pas une bonne idée, surtout si vous renommez le répertoire actuel sous l'utilisateur. Il est difficile de sauvegarder le script que vous venez d'ouvrir à partir du répertoire actuel. Le changement de nom échouera également si votre utilisateur crée à nouveau "B Files" alors que B_Files existe lors d'une exécution précédente. Assurez-vous de tester le code retour de la fonction rename !
Re : Changer le nom du dossier où le fichier jmp est stockéVoici quelques expressions régulières pour vous aider avec le changement de nom
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 première expression régulière isole le sous-répertoire final. La deuxième expression régulière change l'espace, @ et $ pour souligner. La première expression régulière aurait besoin d'un échappement laid si le chemin utilisait des barres obliques inverses. La première expression régulière dit "trouver une série d'un ou plusieurs caractères qui ne sont pas /, suivi d'un / facultatif, suivi de la fin de la chaîne". Les parenthèses forment la référence arrière \1 pour le résultat. La deuxième expression régulière utilise une classe de caractères dans [ ] au cas où vous auriez plusieurs caractères spéciaux à supprimer,
Re : Changer le nom du dossier où le fichier jmp est stockéLa fonction Rename File() vous permet de changer le nom du fichier. Il honorera les espaces vides dans les noms, tout comme une fonction Open(). Qu'est-ce que je rate?
Re : Changer le nom du dossier où le fichier jmp est stockéMerci à Txnelson pour la suggestion. Je suis revenu et j'ai vérifié. On dirait que je ne peux pas changer le nom du fichier. Existe-t-il un moyen d'ignorer l'espace lors de l'appel ou de l'ouverture du fichier à partir du répertoire ?Re : Changer le nom du dossier où le fichier jmp est stockéVoici l'exemple tiré directement du Scripting Index pour
Aide==>Index des scripts==>Fonctions==>Renommer le répertoire
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 */