2013-05-13 20 views
28

Ich habe in der MATLAB-Dokumentation für eine lange Zeit ...Wo soll startup.m sein?

Zum Beispiel am unteren Rand des

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

es sagt

die Antwort auf diese Frage zu jagen

Verwenden Sie die Datei "startup.m", um den Startordner anzugeben ...

... was einfach absurd ist, da anderswo in der Dokumentation steht, dass startup.m im sogenannten "Startup-Ordner" zu finden ist. Daher gibt es für diese Datei keine Möglichkeit anzugeben, wo dieser Ordner sein soll.

Etc., etc., usw. Diese Art der Kreisförmigkeit durchdringt alles, was ich in der Dokumentation auf startup.m gefunden habe.

Was ich wissen will ist: kann oder kann ich nicht den Speicherort des "Autostart-Ordners" auf eine Weise anpassen, die persistent ist, und wenn ja, wo ist diese persistente Informationen gespeichert?

+2

Ich stimme völlig der Kreisförmigkeit zu und ich denke, es kommt von OS Vielfalt! Sie können ein Feedback/eine Aktualisierungsanfrage für die Dokumente senden (dies ist effektiv), indem Sie "NEIN" auf * "War dieses Thema hilfreich?" * In der unteren rechten Ecke jeder Dokumentseite klicken. Beachten Sie auch, dass ** Startoptionen in der MATLAB-Startup-Datei angeben ** sagt zu * "Platzieren Sie die Datei startup.m im Standardordner oder im aktuellen Startordner, wo MATLAB zuerst danach sucht ..." *. In gewisser Weise gibt es einen Standard-Startordner, der von 'userpath' zurückgegeben wird und von dort aus kann er woanders umgeleitet werden (oder die Verknüpfungsoptionen verwenden, wenn Win OS). – Oleg

+0

zu @OlegKomarov hinzufügen: Sie können testen, wo die Datei startup.m ist, indem Sie 'which startup.m' aufrufen (funktioniert auf jede Funktion/Datei auf dem Pfad). Wenn Sie versuchen, die Dinge zu ändern, sehen Sie hier kurz nach, ob Ihre Änderungen wie gewünscht waren. –

Antwort

13

Die beste Methode, finde ich, ist diese. Nehmen wir an, Sie möchten, dass MATLAB in mystartupdir startet und Sie startup.m in diesem Verzeichnis platziert haben.

Erstellen Sie unter Windows ein Verknüpfungssymbol für MATLAB, klicken Sie mit der rechten Maustaste darauf und wählen Sie Properties. Bearbeiten Sie das Feld Start In. Verwenden Sie dieses Symbol jetzt, wenn Sie MATLAB starten möchten.

Auf anderen Plattformen können Sie MATLAB mit der -sd Flagge führen Sie das Startverzeichnis angeben:

matlab -sd mystartupdir

Wenn Sie kein Startverzeichnis angeben, wird MATLAB den von den userpath angegebenen Standard verwenden Befehl. Sie können Ihre startup.m Datei dort platzieren.

+6

Eigentlich scheint das '-sd mystartupdir * nur * auf Windows-Systemen * verfügbar zu sein. Ich konnte keine Entsprechung dafür auf Mac oder Linux finden. – kjo

10

Nach this page in der Dokumentation, sollten Sie Ihre eigenen startup.m im „Startverzeichnis“, das erstellen, wenn Sie dem Link folgen, führt zu this page Erläuterung der Definition des Begriffs „Startverzeichnis“ in diesem Zusammenhang.

Sie können dieses „Startverzeichnis“ abrufen mit der userpath Funktion, die auf meinem System zurückgibt:

>> userpath 

ans = 

C:\Users\MYUSERNAME\Documents\MATLAB; 

Ich persönlich gesetzt nur die „Start In“ in der Verknüpfung zu, was ich will - aber offensichtlich Dies funktioniert nicht, wenn Sie nicht unter Windows arbeiten. Wenn Sie nicht auf Windows oder lieber nicht auf die Verknüpfung angewiesen sind, sollten Sie eine startup.m mit einem Aufruf an cd in was auch immer userpath zurückgibt.

Die docs sagen auch, können Sie die userpath Funktion ändern, wenn Sie es wünschen, oder die matlabrc.m Datei in matlabroot/toolbox/local (aber Sie können nur das letztere tun, wenn Sie ein MathWorks Ingenieur oder ein Systemadministrator sind, sonst wird MathWorks Regen feurige Hölle von oben auf dich oder etwas ...).

+1

Geben Sie zum Erstellen eines startup.m an der richtigen Stelle Folgendes ein: 'cd userpath' gefolgt von' edit startup.m' und bestätigen Sie, dass Sie es erstellen möchten. –

+0

* "Die Docs sagen auch, dass Sie die' userpath' Funktion ändern können "*: Entschuldigung für diese verspätete Anfrage, aber beim erneuten Besuch dieser Antwort kann ich nicht finden, wo in den Dokumenten steht, dass man die' userpath' Funktion ändern kann . Könnten Sie das klären? – kjo

+1

@ kjo, um den Pfad des Benutzerpfads zu ändern, geben Sie den gewünschten Pfad als Argument für die Funktion an. Zum Beispiel: 'userpath ('/ home/MYUSERNAME/foo/matlab')' – spinup

6

Unter Mac OS X können Sie Ihre startup.m Datei in /matlabrootfolder/toolbox/local/ einfügen. Beispielsweise könnte dieser Pfad für Matlab 2012 wie folgt aussehen: /Applications/MATLAB_R2012a.app/toolbox/local/.

Um zu verhindern, dass die Datei nach dem Upgrade von Matlab entfernt wird, können Sie einen Symlink zur Datei verwenden. Wenn Ihr wird Startdatei bei $HOME/myDir/startup.m gespeichert, zum Beispiel (in Bash):

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

Referenz: http://www.mathworks.com/help/matlab/matlab_env/startup-options.html

1

Wie lesen http://fr.mathworks.com/help/matlab/matlab_env/matlab-startup-folder.html#buj_13n:

Ändern der Startordner

Start In R2014b können Sie den Autostart-Ordner mithilfe des allgemeinen Bedienfelds " " ändern. Klicken Sie auf der Registerkarte Start im Bereich Umgebung auf Einstellungen. Wählen Sie MATLAB> Allgemein. Wählen Sie eine Option für den ersten Arbeitsordner.

Standardmäßig ist der anfängliche Arbeitsordner basierend auf MATLAB-Startregeln auf Position festgelegt.

Ich wünschte, es würde nicht die grafische Desktop-Oberfläche, obwohl. Mit dem genauen Hinsehen in der Datei matlab.setting, die unter Linux in ~/.matlab/<your_release>/ liegen sollte, können Sie die Linien

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

finden, wo Sie sicher manuell das Startverzeichnis angeben können.

0

Für mich (ich benutze Linux) hat es funktioniert, um die "startup.m" in das Home-Verzeichnis zu setzen. Anscheinend befindet sich das Home-Verzeichnis standardmäßig auf dem Matlab-Pfad. Seltsamerweise funktionierte es auch, wenn ich die "startup.m" in einen neu erstellten "Matlab" (muss alles Kleinbuchstaben sein) Ordner im Home-Verzeichnis. Lassen Sie mich wissen, ob es auch auf Ihrem System funktioniert.

0

Dies ist als ein Zeiger für Lx-Benutzer gemeint (so verwirrt wie ich zuerst war ...). Ich arbeite auf Debian-basierten Boxen, aber das gleiche auf der CentOS-System Aufstellung gelten sollen usw.

  • Sie sicher, dass Sie nach der Installation tun das Verzeichnis/s haben: ~/.matlab/<yr_release(s)>
    Beachten Sie, dass es mehrere Versionen haben wie es in meinem Fall ist. matlab erlaubt das tatsächlich.
  • erstellen ~/.matlab/startup.m
    Übrigens habe ich dort auch mein Verzeichnis Workspace angelegt. Das ist völlig optional
  • In Ihrem Matlab-Fenster Start Registerkarte finden Sie das Menü ITEN/Symbol Set Path, klicken Sie darauf und fügen Sie einen "Matlab Suchpfad" mit der Schaltfläche Ordner oben links hinzufügen. Fügen Sie ~/.matlab als neuen Suchpfad hinzu. Änderungen sollten sofort wirksam werden.
  • Starten Sie Matlab neu, um zu überprüfen, ob der Inhalt von ~/.matlab/startup.m beim Start korrekt berücksichtigt wird.

Ich hasse GUIs ... Ich dachte, du möchtest vielleicht wissen ;-) HTH.