web-dev-qa-db-fra.com

Où est censé être startup.m?

Je cherche depuis longtemps la réponse à cette question dans la documentation MATLAB ...

Par exemple, au bas de

http://www.mathworks.com/help/matlab/matlab_env/changing-the-startup-folder.html

ça dit

Utilisez le fichier startup.m pour spécifier le dossier de démarrage ...

... ce qui est clairement absurde, car ailleurs la documentation indique que startup.m se trouve dans le "dossier de démarrage". Il n’ya donc aucun moyen pour ce fichier de spécifier où ce dossier devrait être.

Etc., etc., etc. Cette sorte de circularité imprègne tout ce que j'ai trouvé dans la documentation sur startup.m.

Ce que je veux savoir, c’est: puis-je ou ne puis-je pas personnaliser l’emplacement du «dossier de démarrage» d’une manière persistante et, le cas échéant, où ces informations persistantes sont-elles stockées?

32
kjo

Je trouve que la meilleure méthode est la suivante. Supposons que vous vouliez que MATLAB démarre dans mystartupdir et que vous ayez placé startup.m dans ce répertoire.

Sous Windows, créez une icône de raccourci vers MATLAB, cliquez dessus avec le bouton droit de la souris et sélectionnez Properties. Editez le champ Start In. Maintenant, utilisez cette icône chaque fois que vous voulez démarrer MATLAB.

Sur d'autres plates-formes, vous pouvez exécuter MATLAB avec l'indicateur -sd pour spécifier le répertoire de démarrage:

matlab -sd mystartupdir

Si vous ne spécifiez pas de répertoire de démarrage, MATLAB utilisera la valeur par défaut spécifiée par la commande userpath. Vous pouvez y placer votre fichier startup.m.

15
Sam Roberts

Selon cette page dans la documentation, vous devez créer votre propre startup.m dans le "répertoire de démarrage" qui, si vous suivez le lien, mène à cette page expliquant la définition de "répertoire de démarrage" dans ce le contexte.

Vous pouvez récupérer ce "répertoire de démarrage" avec la fonction userpath qui renvoie, sur mon système:

>> userpath

ans =

C:\Users\MYUSERNAME\Documents\MATLAB;

Personnellement, je viens de définir le "Démarrer dans" dans le raccourci sur ce que je veux - mais évidemment, cela ne fonctionnera pas si vous n'êtes pas sous Windows; Si vous n'êtes pas sous Windows ou préférez ne pas utiliser le raccourci, vous devez créer un startup.m avec un appel à cd dans le répertoire retourné par userpath.

La documentation indique également que vous pouvez modifier la fonction userpath, si vous le souhaitez, ou le fichier matlabrc.m dans matlabroot/toolbox/local (mais vous ne pouvez le faire que si vous êtes un ingénieur MathWorks ou un administrateur système, sinon MathWorks pleuvra ardemment vous d'en haut, ou quelque chose comme ça ...).

11
wakjah

Sur Mac OS X, vous pouvez placer votre fichier startup.m dans /matlabrootfolder/toolbox/local/. Par exemple, ce chemin pourrait ressembler à ce qui suit pour Matlab 2012: /Applications/MATLAB_R2012a.app/toolbox/local/

Pour empêcher la suppression du fichier après la mise à niveau de Matlab, vous pouvez utiliser un lien symbolique vers le fichier. Si votre fichier de démarrage est stocké à $HOME/myDir/startup.m, par exemple (dans Bash): 

cd /Applications/MATLAB_R2012a.app/toolbox/local/
ln -s ~/myDir/startup.m .

Référence: http://www.mathworks.com/help/matlab/matlab_env/startup-options.html

7
user813853

Ceci est conçu comme un pointeur pour les utilisateurs de Lx (aussi confus que je l'étais au début ...). Je travaille sur des boîtes basées sur Debian, mais il devrait en aller de même pour la gamme de systèmes CentOS, etc.

  • Vérifiez qu’après l’installation vous avez le répertoire/ies: ~/.matlab/<yr_release(s)>
    Notez que vous pouvez y avoir plusieurs versions, comme c'est mon cas. matlab permet réellement cela.
  • Créer ~/.matlab/startup.m
    Incidemment, j'ai également créé mon répertoire Workspace à cet endroit. C'est complètement optionnel
  • Dans l'onglet Accueil de votre fenêtre Matlab, recherchez le menu iten/icon Set Path, cliquez dessus et ajoutez un "chemin de recherche Matlab" avec le bouton Ajouter un dossier en haut à gauche. Ajoutez ~/.matlab comme nouveau chemin de recherche. Le changement devrait prendre effet immédiatement. 
  • Redémarrez Matlab pour vérifier que le contenu de ~/.matlab/startup.m est correctement pris en compte au moment du lancement.

Je déteste les interfaces graphiques ... Je pensais que vous voudriez peut-être savoir ;-) HTH.

2
Cbhihe

Comme indiqué dans http://fr.mathworks.com/help/matlab/matlab_env/matlab-startup-folder.html#buj_13n :

Changer le dossier de démarrage

À partir de R2014b, vous pouvez modifier le dossier de démarrage à l'aide du fichier Panneau de préférences générales. Sur l'onglet Accueil, dans l'environnement section, cliquez sur Préférences. Sélectionnez MATLAB> Général. Choisis une option pour le dossier de travail initial.

Par défaut, le dossier de travail initial est défini sur Emplacement en fonction de Règles de démarrage de MATLAB.

J'aimerais que cela n'implique pas l'interface graphique du bureau, cependant. En regardant de près dans le fichier matlab.setting, qui sous Linux devrait se trouver dans ~/.matlab/<your_release>/, vous pouvez trouver les lignes

<key name="UserPath">
    <string>
        <value><![CDATA[<some_directory>]]></value>
    </string>
</key>

où vous pouvez certainement spécifier manuellement le répertoire de démarrage.

1
Hugo Raguet

Pour moi (j'utilise Linux), cela a fonctionné pour mettre le "startup.m" dans le répertoire de base. Apparemment, le répertoire de base est par défaut sur le chemin matlab. Étrangement, cela a également fonctionné lorsque j'ai placé le fichier "startup.m" dans un dossier "matlab" (qui doit être entièrement en minuscule) nouvellement créé dans le répertoire de base. Faites-moi savoir si cela fonctionne également sur votre système.

0
tc88