Hat Matlab eine MATLABRC-Datei?

8

Heute bin ich auf diesen Thread gestoßen:

Ссылка

Die Frage ist im Grunde, wie Sie Matlab dazu bringen, Ihre startup.m-Datei unabhängig von ihrem Standort zu lesen Sie starten Ihre Matlab-Sitzung.

Eine der angebotenen Lösungen war:

  

Eine Lösung wäre, den Systemadministrator zu bitten, ein paar Zeilen hinzuzufügen   zu "matlabrc.m", das einen bestimmten Ordner im Heim des Benutzers hinzufügt   Verzeichnis zum MATLAB-Pfad (sagen wir ~ / .matlabstart). Dann kann jeder Benutzer   haben ihre eigene "startup.m" -Datei in diesem Ordner.

Was ich in meinem System (OS X) getan habe, war eine startup.m-Datei in:

hinzuzufügen %Vor%

In dieser Datei "startup.m" habe ich hinzugefügt:

%Vor%

Auf diese Weise haben Benutzer die Möglichkeit, den versteckten Ordner ~/.matlabrc zu erstellen und darin die Datei startup.m zu speichern. In dieser Startup-Datei können sie Matlab mitteilen, was bei jedem Start von Matlab auszuführen ist, unabhängig vom Verzeichnis, in dem sie gestartet wurden. Ein Beispiel dafür, was ich meiner persönlichen startup.m -Datei hinzugefügt habe, ist

%Vor%

Jetzt kann ich so viele Ordner innerhalb dieses Verzeichnisses hinzufügen und alle werden hinzugefügt auf den Pfad jedes Mal, wenn ich Matlab automatisch starte, ohne den Pfad ändern zu müssen.

Die Frage ist: Hat Matlab bereits eine spezielle Datei wie die, die ich erstellt habe, erstellt oder habe ich einfach all diese Schwierigkeiten durchgespielt, um das zu erreichen, was ich wollte? Wenn die Antwort die zweite Option ist, die ich gegeben habe, warum liefert Matlab das dann nicht? Es ist so ein Schmerz in den Arsch, Verzeichnisse zum Matlab-Pfad hinzuzufügen, wenn Sie keine Administratorrechte haben und ich meine startup.m -Datei nicht in jedes Verzeichnis mitnehmen möchte, in das ich gehe. Kann jemand bitte etwas Licht hinein werfen?

    
jmlopez 16.06.2012, 02:59
quelle

1 Antwort

6

Sie können die pathdef-Datei (die alle hinzugefügten Pfade speichert) in einem benutzerdefinierten Verzeichnis speichern. Das Problem ist jedoch, dass beim Start von Matlab nicht automatisch erkannt wird, welches benutzerdefinierte Verzeichnis Sie in der vorherigen Sitzung verwendet haben.

Aber hier kommt die Umgebungsvariable MATLABPATH ins Spiel. Denn damit kann der Matlab-Startpfad selbst gesetzt werden. In Linux geschieht dies einfach durch Setzen dieser Umgebungsvariablen MATLABPATH vor dem Starten von Matlab (von einem Terminal / in Ihrem .bashrc / ...)

%Vor%

Auf diese Weise können Sie allen Benutzern eine eigene pathdef-Datei zur Verfügung stellen, was das Problem behebt, dass sie beim Start manuell hinzugefügt werden müssen.

BEARBEITEN

Ich habe getestet, ob das Hinzufügen von startup.m zu diesem MATLABPATH-Verzeichnis funktioniert hat, dh: macht Matlab diese Startup-Datei? ... und es tut es. Ich denke, es funktioniert nicht für Sie, weil es eine andere startup.m-Datei in einem anderen (höhere Priorität) Verzeichnis (wahrscheinlich matlabroot ) gibt, so dass Vorrang hat. Meine einzige Startup-Datei befindet sich in MATLABPATH, daher gibt es nur eine Auswahl.

EDIT2

Nein, ich habe das Start-Verzeichnis zum Matlabroot-Verzeichnis hinzugefügt, und trotzdem wird meine eigene Startup-Datei in .matlab ausgeführt. Sind Sie sicher, dass Sie den MATLABPATH korrekt eingestellt haben, bevor Sie Matlab gestartet haben?

    
Gunther Struyf 16.06.2012, 17:37
quelle

Tags und Links