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

Ordnerwechsel in Ort des Skripts

 

curator
Forum-Newbie

Forum-Newbie


Beiträge: 4
Anmeldedatum: 07.10.07
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 25.05.2011, 10:40     Titel: Ordnerwechsel in Ort des Skripts
  Antworten mit Zitat      
Hallo Forum,

ich habe vielleicht ein zu einfaches Problem, habe mit google aber leider nichts gefunden:

Ich habe über den PATH Befehl einige Ordner eingesetzt, so dass ich dortige Skripte von überall starten kann. Den gleichen Ordner hab ich auf mehreren PC`s, wo die auch an anderen Stellen liegen, die PATH entsprechend angepasst.

Nun benötige ich ein Skript, dass auf einen Unterordner "A" des Verzeichnisses zugreift, in dem sich das Skript befindet.

Beispiel:
Datei x.m
Code:


Weiter sei der PATH auf c:\Test gesetzt, wo x.m liegt und der Unterordner c:\Test\A

Führe ich das Skript von c:\Test aus, klappt das ganze natürlich, bin ich aber in c:\Test2, kann ich nicht auf A wechsel, weil currentFolder ja eben c:\Test2 ist und nicht c:\Test1

Was kann ich also tun, damit ich z.B. bei Funktionsaufruf in den Ordner springe, indem das skript liegt?

Gruß
curator
Private Nachricht senden Benutzer-Profile anzeigen


denny
Supporter

Supporter



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

bin mir nicht sicher ob ich dich verstehe,

du kannst mit MFILENAME in Startscript, abfragen, wo es liegt:
Code:

start_path = mfilename('fullpath')
% oder
start_path = fileparts(which(mfilename()))
 


danach kannst mit ADDPATH den Unterodner zu Suchpfad anhängen

Code:

addpath(fullfile(start_path ,'A'))
 


oder gleich alle Unterordner
Code:

addpath(genpath(start_path ))
 
Private Nachricht senden Benutzer-Profile anzeigen
 
torben234

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 22.03.2012, 16:17     Titel:
  Antworten mit Zitat      
wie würde ich das machen wenn ich anstatt mit genpath alle unterordner und deren unterordner nur die direkten Unterordner gerne hätte...

quasi

/home/testuser/test1/run1
/home/testuser/test1/run2
/home/testuser/test2/run1
/home/testuser/test2/run2
/home/testuser/test3/run1
/home/testuser/test3/run2
/home/testuser/test3/run3

mit genpath('/home/testuser') bekomme ich ja alle Verzeichnisse...

ich hätte allerdings nur gerne...

/home/testuser/test1:/home/testuser/test2:/home/testuser/test3
 
denny
Supporter

Supporter



Beiträge: 3.853
Anmeldedatum: 14.02.08
Wohnort: Ulm
Version: R2012b
     Beitrag Verfasst am: 23.03.2012, 11:00     Titel:
  Antworten mit Zitat      
Hallo

so z.B:
Code:

path2add = '/home/testuser';
dir_list     = dir(path2add );
dir_list     = {dir_list([dir_list.isdir]).name};
dir_list     = setdiff(dir_list,{'.','..'})
frmt  = sprintf('%s%s%%s%s', regexptranslate('escape',path2add),  regexptranslate('escape',filesep), pathsep);

addpath(sprintf(frmt,dir_list{:}))

 
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 - 2025 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.