WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

funktion aus unterordner aufrufen

 

dabauer82
Forum-Century

Forum-Century



Beiträge: 184
Anmeldedatum: 21.03.08
Wohnort: ---
Version: R2008a, R2010b
     Beitrag Verfasst am: 02.04.2008, 09:55     Titel: funktion aus unterordner aufrufen
  Antworten mit Zitat      
hallo,

ich befinde mich ein meinem rootverzeichnis und möchte eine funktion foo.m aus dem unterordner root/unterordner starten. leider geht das nur wenn ich in diesen unterordner wechsel und normal foo eingebe.


wie kann ich aus root diese funktion foo starten bzw aufrufen?

danke
Private Nachricht senden Benutzer-Profile anzeigen


tompie
Forum-Guru

Forum-Guru


Beiträge: 260
Anmeldedatum: 19.09.07
Wohnort: München
Version: immer alles
     Beitrag Verfasst am: 02.04.2008, 10:00     Titel:
  Antworten mit Zitat      
Hallo,

dazu musst Du Deinen Matlab-Suchpfad um diesen Unterordner erweitern:

Zitat:
path('root/unterordner',path);


Oder auch direkt in der Entwicklungsumgebung mit File > Set Path...

Alternativ kannst Du einen Unterordner namens 'private' anlegen, der wird dann nur von Routinen im Überordner gesehen.

Gruß tompie
Private Nachricht senden Benutzer-Profile anzeigen
 
denny
Supporter

Supporter



Beiträge: 3.853
Anmeldedatum: 14.02.08
Wohnort: Ulm
Version: R2012b
     Beitrag Verfasst am: 02.04.2008, 10:07     Titel:
  Antworten mit Zitat      
Hallo,

1) aus einem Verzeichnis in Shell konnte so gehen:

Code:

run(fullfile(pwd,'unterordner','foo.m'))
 


2) wenn aus einem M-File die Funktion aufgerufen wird, da ist statt pwd dieser Konstrukt besser:
Code:

    %mfile finden
    pathRoot = fileparts(which(mfilename));
    run(fullfile(pathRoot,'unterordner','foo.m'))
 


3) oder du nutzt einfach addpath('root/unterordner')
Private Nachricht senden Benutzer-Profile anzeigen
 
dabauer82
Themenstarter

Forum-Century

Forum-Century



Beiträge: 184
Anmeldedatum: 21.03.08
Wohnort: ---
Version: R2008a, R2010b
     Beitrag Verfasst am: 02.04.2008, 10:13     Titel:
  Antworten mit Zitat      
hey, sehr gut.
vielen dank. ich bin über die hilfe von PATH auch auf ADDPATH gestoplert.

frage mich aber gerade, ob ich in meiner main.m nicht auch automatisch alle unterordner mit addpath einbinden kann, zum Beipiel so:

addpath('c:\root\*');

oder muss ich für jeden Unterordner und UnterUnterordner einen addpath befehl verwenden?
Private Nachricht senden Benutzer-Profile anzeigen
 
outsider
Forum-Meister

Forum-Meister


Beiträge: 806
Anmeldedatum: 03.09.07
Wohnort: München
Version: R2012b
     Beitrag Verfasst am: 02.04.2008, 10:27     Titel:
  Antworten mit Zitat      
Zitat:
muss ich für jeden Unterordner und UnterUnterordner einen addpath befehl verwenden?

nein - musst Du nicht.
Schau nach der Funktion GENPATH


MfG
Private Nachricht senden Benutzer-Profile anzeigen
 
denny
Supporter

Supporter



Beiträge: 3.853
Anmeldedatum: 14.02.08
Wohnort: Ulm
Version: R2012b
     Beitrag Verfasst am: 02.04.2008, 10:28     Titel:
  Antworten mit Zitat      
Hallo

Mit genpath kannst du alle Unterverzeichnisse zu Path anhängen
Code:

addpath(genpath('c:\root\'));
 
Private Nachricht senden Benutzer-Profile anzeigen
 
dabauer82
Themenstarter

Forum-Century

Forum-Century



Beiträge: 184
Anmeldedatum: 21.03.08
Wohnort: ---
Version: R2008a, R2010b
     Beitrag Verfasst am: 02.04.2008, 10:35     Titel:
  Antworten mit Zitat      
besten dank,

manchmal hängt es einfach an dem suchbegriff....

grüße
Private Nachricht senden Benutzer-Profile anzeigen
 
Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

Du kannst Beiträge in dieses Forum schreiben.
Du kannst auf Beiträge in diesem Forum antworten.
Du kannst deine Beiträge in diesem Forum nicht bearbeiten.
Du kannst deine Beiträge in diesem Forum nicht löschen.
Du kannst an Umfragen in diesem Forum nicht mitmachen.
Du kannst Dateien in diesem Forum posten
Du kannst Dateien in diesem Forum herunterladen
.





 Impressum  | Nutzungsbedingungen  | Datenschutz | FAQ | goMatlab RSS Button RSS

Hosted by:


Copyright © 2007 - 2024 goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks

MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.