Quantcast

[Users-fr] Répertoire de démarrage Scilab

classic Classic list List threaded Threaded
10 messages Options
Vincent Flutet Vincent Flutet
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

[Users-fr] Répertoire de démarrage Scilab

Bonjour,

Je souhaite pouvoir lancer des script scilab en ligne de commande sous Windows, avec scilab 5.5.2

En particulier je souhaite lancer un script situé dans le répertoire courant.
Or quand je tape "scilex -f monfichier.sce", j'ai un message d'erreur me disant que "monfichier.sce" n'existe pas.

Après vérification je me suis rendu compte qu'au lieu de se lancer dans le répertoire courant, Scilab se lance dans le répertoire "Mes Documents", ce qui explique qu'il ne trouve pas le fichier.

Comment faire pour que le répertoir de travail de Scilab soit le répertoire où il a été lancé ?

Merci

Vincent FLUTET
_______________________________________________
users-fr mailing list
[hidden email]
http://lists.scilab.org/mailman/listinfo/users-fr
Samuel GOUGEON Samuel GOUGEON
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Répertoire de démarrage Scilab

Bonsoir,


----- Mail original -----
De: "Vincent Flutet"
>
>Je souhaite pouvoir lancer des script scilab en ligne de commande sous Windows, avec scilab 5.5.2
>
>En particulier je souhaite lancer un script situé dans le répertoire courant.
>Or quand je tape "scilex -f monfichier.sce", j'ai un message d'erreur me disant que "monfichier.sce" n'existe pas.
>
>Après vérification je me suis rendu compte qu'au lieu de se lancer dans le répertoire courant, Scilab se lance dans le répertoire "Mes Documents", ce qui explique qu'il ne trouve pas le fichier.
>
>Comment faire pour que le répertoir de travail de Scilab soit le répertoire où il a été lancé ?

Sous Windows :
D:\Users\Vincent\..\monDir>scilex -f %cd%\monfichier.sce

%cd% est la variable DOS contenant le chemin+nom du dossier courant. Elle est remplacée par sa valeur lors de l'exécution de l'instruction par Windows.

Cordialement
Samuel Gougeon


_______________________________________________
users-fr mailing list
[hidden email]
http://lists.scilab.org/mailman/listinfo/users-fr
Samuel GOUGEON Samuel GOUGEON
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Répertoire de démarrage Scilab

----- Mail original -----
De: Samuel Gougeon
>De: "Vincent Flutet"
>>
>>Je souhaite pouvoir lancer des script scilab en ligne de commande sous Windows, avec scilab 5.5.2
>>
>>En particulier je souhaite lancer un script situé dans le répertoire courant.
>>Or quand je tape "scilex -f monfichier.sce", j'ai un message d'erreur me disant que "monfichier.sce" n'existe pas.
<>
>>Après vérification je me suis rendu compte qu'au lieu de se lancer dans le répertoire courant, Scilab se lance dans le répertoire "Mes Documents", ce qui explique qu'il ne trouve pas le fichier.
>>
>>Comment faire pour que le répertoir de travail de Scilab soit le répertoire où il a été lancé ?
>
>Sous Windows :
>D:\Users\Vincent\..\monDir>scilex -f %cd%\monfichier.sce
>
>%cd% est la variable DOS contenant le chemin+nom du dossier courant. Elle est remplacée par sa valeur lors de l'exécution de l'instruction par Windows.

En fait, cette solution va exécuter le fichier monfichier.sce déposé dans le dossier depuis lequel vous lancez Scilab, mais sans établir celui-ci comme dossier de travail de Scilab.
Si vous voulez en plus établir le dossier de travail de Scilab au dossier de son lancement, vous pouvez plutôt utiliser

D:\Users\Vincent\..\monDir>scilex -e "cd '%cd%'; exec('monfichier.sce',-1);"

Puis dans la session, pour vérifier que le dossier de travail est bien le dossier depuis lequel vous avez lancé scilex:

--> pwd


Cordialement
Samuel Gougeon


_______________________________________________
users-fr mailing list
[hidden email]
http://lists.scilab.org/mailman/listinfo/users-fr
_______________________________________________
users-fr mailing list
[hidden email]
http://lists.scilab.org/mailman/listinfo/users-fr
Sébastien GUILLOT Sébastien GUILLOT
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Répertoire de démarrage Scilab

In reply to this post by Samuel GOUGEON
Bonjour?

La commande "mainpath = get_absolute_file_path('fichier.sce');" rendra le
répertoire de fichier.sce comme courant

Cordialement,

Sébastien GUILLOT,

> -----Message d'origine-----
> De : users-fr [mailto:[hidden email]] De la part de
> [hidden email]
> Envoyé : mardi 29 novembre 2016 19:02
> À : French users mailing list for Scilab <[hidden email]>
> Objet : Re: [Users-fr] Répertoire de démarrage Scilab
>
> Bonsoir,
>
>
> ----- Mail original -----
> De: "Vincent Flutet"
> >
> >Je souhaite pouvoir lancer des script scilab en ligne de commande sous
> Windows, avec scilab 5.5.2
> >
> >En particulier je souhaite lancer un script situé dans le répertoire
courant.
> >Or quand je tape "scilex -f monfichier.sce", j'ai un message d'erreur me
> disant que "monfichier.sce" n'existe pas.
> >
> >Après vérification je me suis rendu compte qu'au lieu de se lancer dans
le
> répertoire courant, Scilab se lance dans le répertoire "Mes Documents", ce
> qui explique qu'il ne trouve pas le fichier.
> >
> >Comment faire pour que le répertoir de travail de Scilab soit le
répertoire où
> il a été lancé ?
>
> Sous Windows :
> D:\Users\Vincent\..\monDir>scilex -f %cd%\monfichier.sce
>
> %cd% est la variable DOS contenant le chemin+nom du dossier courant. Elle
> est remplacée par sa valeur lors de l'exécution de l'instruction par
Windows.
>
> Cordialement
> Samuel Gougeon
>
>
> _______________________________________________
> users-fr mailing list
> [hidden email]
> http://lists.scilab.org/mailman/listinfo/users-fr

_______________________________________________
users-fr mailing list
[hidden email]
http://lists.scilab.org/mailman/listinfo/users-fr
Sébastien GUILLOT Sébastien GUILLOT
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Répertoire de démarrage Scilab

In reply to this post by Samuel GOUGEON
Re Bonsoir,
Mon mail précédent était incomplet :
Pour rendre le dossier de votre ficher courant :
        mainpath = get_absolute_file_path('fichier.sce');
Puis pour l 'executer :
        exec(mainpath + 'dossier1/dossier2/monfichier.sce');

Cordialement,

Sébastien GUILLOT,

> -----Message d'origine-----
> De : users-fr [mailto:[hidden email]] De la part de
> [hidden email]
> Envoyé : mardi 29 novembre 2016 19:02
> À : French users mailing list for Scilab <[hidden email]>
> Objet : Re: [Users-fr] Répertoire de démarrage Scilab
>
> Bonsoir,
>
>
> ----- Mail original -----
> De: "Vincent Flutet"
> >
> >Je souhaite pouvoir lancer des script scilab en ligne de commande sous
> Windows, avec scilab 5.5.2
> >
> >En particulier je souhaite lancer un script situé dans le répertoire
courant.
> >Or quand je tape "scilex -f monfichier.sce", j'ai un message d'erreur me
> disant que "monfichier.sce" n'existe pas.
> >
> >Après vérification je me suis rendu compte qu'au lieu de se lancer dans
le
> répertoire courant, Scilab se lance dans le répertoire "Mes Documents", ce
> qui explique qu'il ne trouve pas le fichier.
> >
> >Comment faire pour que le répertoir de travail de Scilab soit le
répertoire où
> il a été lancé ?
>
> Sous Windows :
> D:\Users\Vincent\..\monDir>scilex -f %cd%\monfichier.sce
>
> %cd% est la variable DOS contenant le chemin+nom du dossier courant. Elle
> est remplacée par sa valeur lors de l'exécution de l'instruction par
Windows.
>
> Cordialement
> Samuel Gougeon
>
>
> _______________________________________________
> users-fr mailing list
> [hidden email]
> http://lists.scilab.org/mailman/listinfo/users-fr

_______________________________________________
users-fr mailing list
[hidden email]
http://lists.scilab.org/mailman/listinfo/users-fr
Samuel GOUGEON Samuel GOUGEON
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Répertoire de démarrage Scilab

Le 29/11/2016 20:00, Sébastien GUILLOT a écrit :
> Re Bonsoir,
> Mon mail précédent était incomplet :
> Pour rendre le dossier de votre ficher courant :
> mainpath = get_absolute_file_path('fichier.sce');
get_absolute_file_path() fonctionne uniquement si le fichier donné en
argument est en cours d'exécution.
Or lancer l'éxécution de celui-ci depuis la ligne de commande scilex est
justement le problème rencontré par Vincent.
Donc sauf malentendu sur le problème évoqué par Vincent, cette méthode
n'est pas utilisable ici.

Bonne soirée
Samuel Gougeon

_______________________________________________
users-fr mailing list
[hidden email]
http://lists.scilab.org/mailman/listinfo/users-fr
Antoine ELIAS-2 Antoine ELIAS-2
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Répertoire de démarrage Scilab

In reply to this post by Vincent Flutet
Bonjour a tous,

Je viens de faire le test et normalement cela devrait fonctionner (
5.5.2 et 6.0.0-beta-2 )

-------------- log console --------------
D:\current_folder>dir && "c:\Program Files\scilab-5.5.2\bin\Scilex.exe"
-nwni -f "test.sce"
  Le volume dans le lecteur D s’appelle Dev
  Le numéro de série du volume est 92B5-2B1B

  Répertoire de D:\current_folder

30/11/2016  11:39    <DIR>          .
30/11/2016  11:39    <DIR>          ..
30/11/2016  11:39                20 test.sce
                1 fichier(s)               20 octets
                2 Rép(s)  90 452 606 976 octets libres
Scilab 5.5.2 (Mar 31 2015, 12:04:21)

result of pwd(): D:\current_folder

D:\current_folder>
-------------- log console --------------

Scilab se lance dans "Mes Documents" uniquement via le raccourci sur
bureau qui est configuré pour faire cela.
Dans les preférences de Scilab vous pouvez définir le répertoire de
lancement.
Options :
  - le répertoire par défaut
  - un répertoire spécifique
  - le dernier répertoire "visité" lors de la session précédente.

Bonne journée
Antoine

Le 2016-11-29 14:37, Vincent Flutet a écrit :

> Bonjour,
>
> Je souhaite pouvoir lancer des script scilab en ligne de commande sous
> Windows, avec scilab 5.5.2
>
> En particulier je souhaite lancer un script situé dans le répertoire
> courant.
> Or quand je tape "scilex -f monfichier.sce", j'ai un message d'erreur
> me disant que "monfichier.sce" n'existe pas.
>
> Après vérification je me suis rendu compte qu'au lieu de se lancer
> dans le répertoire courant, Scilab se lance dans le répertoire "Mes
> Documents", ce qui explique qu'il ne trouve pas le fichier.
>
> Comment faire pour que le répertoir de travail de Scilab soit le
> répertoire où il a été lancé ?
>
> Merci
>
> Vincent FLUTET
> _______________________________________________
> users-fr mailing list
> [hidden email]
> http://lists.scilab.org/mailman/listinfo/users-fr
_______________________________________________
users-fr mailing list
[hidden email]
http://lists.scilab.org/mailman/listinfo/users-fr
Vincent Flutet Vincent Flutet
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Répertoire de démarrage Scilab

Bonjour,


Tout d'abord merci pour vos réponses.
J'ai trouvé la cause de problème (et donc sa solution) :

Il y avait un"cd C:\Users\...\Documents" dans le fichier scilab.ini

Cordialement,

-----Message d'origine-----
De : [hidden email] [mailto:[hidden email]]
Envoyé : mercredi 30 novembre 2016 11:57
À : French users mailing list for Scilab <[hidden email]>
Cc : Vincent Flutet <[hidden email]>
Objet : Re: [Users-fr] Répertoire de démarrage Scilab

Bonjour a tous,

Je viens de faire le test et normalement cela devrait fonctionner (
5.5.2 et 6.0.0-beta-2 )

-------------- log console -------------- D:\current_folder>dir && "c:\Program Files\scilab-5.5.2\bin\Scilex.exe"
-nwni -f "test.sce"
  Le volume dans le lecteur D s’appelle Dev
  Le numéro de série du volume est 92B5-2B1B

  Répertoire de D:\current_folder

30/11/2016  11:39    <DIR>          .
30/11/2016  11:39    <DIR>          ..
30/11/2016  11:39                20 test.sce
                1 fichier(s)               20 octets
                2 Rép(s)  90 452 606 976 octets libres Scilab 5.5.2 (Mar 31 2015, 12:04:21)

result of pwd(): D:\current_folder

D:\current_folder>
-------------- log console --------------

Scilab se lance dans "Mes Documents" uniquement via le raccourci sur bureau qui est configuré pour faire cela.
Dans les preférences de Scilab vous pouvez définir le répertoire de lancement.
Options :
  - le répertoire par défaut
  - un répertoire spécifique
  - le dernier répertoire "visité" lors de la session précédente.

Bonne journée
Antoine

Le 2016-11-29 14:37, Vincent Flutet a écrit :

> Bonjour,
>
> Je souhaite pouvoir lancer des script scilab en ligne de commande sous
> Windows, avec scilab 5.5.2
>
> En particulier je souhaite lancer un script situé dans le répertoire
> courant.
> Or quand je tape "scilex -f monfichier.sce", j'ai un message d'erreur
> me disant que "monfichier.sce" n'existe pas.
>
> Après vérification je me suis rendu compte qu'au lieu de se lancer
> dans le répertoire courant, Scilab se lance dans le répertoire "Mes
> Documents", ce qui explique qu'il ne trouve pas le fichier.
>
> Comment faire pour que le répertoir de travail de Scilab soit le
> répertoire où il a été lancé ?
>
> Merci
>
> Vincent FLUTET
> _______________________________________________
> users-fr mailing list
> [hidden email]
> http://lists.scilab.org/mailman/listinfo/users-fr
_______________________________________________
users-fr mailing list
[hidden email]
http://lists.scilab.org/mailman/listinfo/users-fr
Samuel GOUGEON Samuel GOUGEON
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Répertoire de démarrage Scilab

In reply to this post by Antoine ELIAS-2
Bonsoir,

Le 30/11/2016 11:57, [hidden email] a écrit :
> Bonjour a tous,
>
> Je viens de faire le test et normalement cela devrait fonctionner (
> 5.5.2 et 6.0.0-beta-2 )


Un test effectué avant de répondre à Vincent échouait. J'ignore pourquoi
-- il n'y a pas de "cd(..)" dans mon scilab.ini -- et sans l'historique
des commandes sous Windows, difficile de comprendre pourquoi a posteriori.

Quoi qu'il en soit, de nouveaux essais confirment qu'en effet, lorsque
une des options "-e" ou "-f" est utilisée, alors scilab fait un
cd(dossier_depuis_lequel_scilab_est_lancé) à l'issue de la procédure de
démarrage et avant d'exécuter les instructions ou le fichier
d'instructions. Hors options "-e" ou "-f", aucun cd() n'est effectué et
les Préférences habituelles de l'utilisateur fixe le dossier de travail.

Ces modalités spéciales pour "-e" et "-f", importantes pour le contexte
de l'exécution, ne sont pas documentées.
Je propose d'y remédier.

Cordialement
Samuel Gougeon

_______________________________________________
users-fr mailing list
[hidden email]
http://lists.scilab.org/mailman/listinfo/users-fr
Samuel GOUGEON Samuel GOUGEON
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Répertoire de démarrage Scilab

Le 04/12/2016 19:33, Samuel Gougeon a écrit :

> Bonsoir,
>
> Le 30/11/2016 11:57, [hidden email] a écrit :
>> Bonjour a tous,
>>
>> Je viens de faire le test et normalement cela devrait fonctionner (
>> 5.5.2 et 6.0.0-beta-2 )
>
>
> Un test effectué avant de répondre à Vincent échouait. J'ignore
> pourquoi -- il n'y a pas de "cd(..)" dans mon scilab.ini -- et sans
> l'historique des commandes sous Windows, difficile de comprendre
> pourquoi a posteriori.
>
> Quoi qu'il en soit, de nouveaux essais confirment qu'en effet, lorsque
> une des options "-e" ou "-f" est utilisée, alors scilab fait un
> cd(dossier_depuis_lequel_scilab_est_lancé) à l'issue de la procédure
> de démarrage et avant d'exécuter les instructions ou le fichier
> d'instructions. Hors options "-e" ou "-f", aucun cd() n'est effectué
> et les Préférences habituelles de l'utilisateur fixe le dossier de
> travail.
>
> Ces modalités spéciales pour "-e" et "-f", importantes pour le
> contexte de l'exécution, ne sont pas documentées.
> Je propose d'y remédier.
Proposition de page scilab|scilex améliorée / corrigée :
https://codereview.scilab.org/#/c/18744
Le fichier attaché en est la version en français "en clair" compilée.

Samuel
PS : version actuelle de la page :
https://help.scilab.org/docs/6.0.0/fr_FR/scilab.html


_______________________________________________
users-fr mailing list
[hidden email]
http://lists.scilab.org/mailman/listinfo/users-fr

scilex_scilab_fr.pdf (60K) Download Attachment
Loading...