2016-08-28 2 views
1

Par exemple: Rstudio utilise les projets - fichiers texte se terminant par .Rproj. Lorsque vous cliquez sur un fichier de projet, il ouvre Rstudio et définit le répertoire de travail où se trouve le fichier de projet. En option, il exécute tout code écrit. Cependant, il ne s'ouvre pas lui-même (c'est-à-dire qu'il n'apparaît pas dans l'éditeur de script).Est-ce que Matlab a des "fichiers de projet"?

Y a-t-il quelque chose comme ça dans Matlab? Sinon, comment l'émuler?

Actuellement, j'utiliser pour créer un fichier .m avec cd, appels addpath etc. Mais quand je clique dans le navigateur de fichier:

  • il ouvre juste Matlab et apparaît dans l'éditeur de script sans course
  • ouverture Matlab est ce que je veux, mais apparaître dans l'éditeur de script est en fait redondant; J'ai seulement besoin de l'exécuter (et utiliser les résultats dans ma session de bureau Matlab)

(Ce que je veux éviter est d'ouvrir le fichier de script, de le lancer manuellement et de le refermer ensuite. ennuyeux!) - édité

+0

Avez-vous essayé de cliquer sur le bouton Exécuter ou de cliquer sur F5 dès qu'il est ouvert? – Suever

+0

Ce que je veux éviter, c'est de l'ouvrir et ensuite de le refermer (parce que je n'ai pas besoin de travailler dessus). C'est juste un couple de choses ennuyeuses à faire: Exécutez-le et fermez-le. À chaque fois. – jakub

+1

En exécutant matlab avec '-nodesktop', vous pouvez simplement exécuter le script sans tout lancer. Ça me fait gagner beaucoup de temps. – Chris

Répondre

1

Matlab n'a pas de "fichiers de projet" (pour autant que je sache). Cependant, je pense que vous pouvez facilement émuler ce que vous voulez.

Supposons que vous avez votre code dans un dossier C: \ MyProject:

1) Créer un nouveau m-file C: \ MyProject \ MyProject.m avec tout votre code d'initialisation (cd, appels addpath, variables globales, tout ce dont vous avez besoin). Voici un exemple simple à des fins de démonstration:

disp('Replace this with your initialization code'); 

2) Créer un lot fichier C: \ MyProject \ MyProject.bat comme suit:

MATLAB -r "run MyProject" 

Maintenant, en double-cliquant sur le lot-fichier, vous:

  • ouvrir l'environnement complet Matlab
  • exec Ute le script MyProject.m (sans le charger dans l'éditeur de script)
+0

Cool! Est-ce que les fichiers .bat fonctionnent aussi sous linux? Ou y a-t-il une manière différente? – jakub

+0

Non, les fichiers .bat ne fonctionneront que sur les systèmes Windows. Sous Linux, vous pouvez écrire un script shell et le rendre exécutable. Cependant, il est beaucoup plus facile d'obtenir les mêmes résultats indépendamment de la plate-forme ... Veuillez lire mon autre réponse concernant 'startup.m'. –

1

A cet effet, Matlab offre startup.m fichiers (online documentation).

Vous devez placer tout votre code d'initialisation dans un fichier appelé startup.m, qui doit être situé dans le chemin de recherche MATLAB (c'est-à-dire dans votre dossier de projet). Le script sera exécuté chaque fois que vous ouvrez MATLAB en double-cliquant sur un fichier m arbitraire de votre dossier de projet.

+0

Je peux voir comment c'est le flux de travail supposé. C'est un peu différent de ce que je veux (c'est-à-dire, je ne peux pas nommer le script comme je veux et j'ai * pour * ouvrir un fichier .m et non le "fichier projet"). – jakub