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

Einfaches Script

 

Markus1234

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 11.11.2010, 18:08     Titel: Einfaches Script
  Antworten mit Zitat      
Hallo Zusammen,

ich hab von Matlab scripten keine Ahnung, brauche aber ein sehr einfaches Script, bitte helft mir ein wenig dabei.

Das script muss in ein Verzeichnis wechseln, alle dort vorhandenen Matlabfiles finden, öffnen und unter neuem Namen wieder speichern.
Anschließend soll sich Matlab wieder beenden.
Giebt es jemanden der so nett ist mir die paar Zeilen Code aufzuschreiben?

Ich danke euch!

Gruß Markus


Jan S
Moderator

Moderator


Beiträge: 11.057
Anmeldedatum: 08.07.10
Wohnort: Heidelberg
Version: 2009a, 2016b
     Beitrag Verfasst am: 11.11.2010, 23:20     Titel: Re: Einfaches Script
  Antworten mit Zitat      
Hallo Markus,

Zitat:
Das script muss in ein Verzeichnis wechseln, alle dort vorhandenen Matlabfiles finden, öffnen und unter neuem Namen wieder speichern.

Nun musst Du noch erklären, was "Matlab-Files" sind. M, MAT, FIG, P, MEX? Und wie soll der neue Namen denn aussehen?

Möchtest Du das unbedingt in Matlab machen? Google findet eine riesige Menge and Freeware Tools, wenn ich nach "automatic rename files" suche.

Gruß, Jan
Private Nachricht senden Benutzer-Profile anzeigen
 
Markus1234

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 12.11.2010, 09:07     Titel:
  Antworten mit Zitat      
Danke für deine Antwort!
Es geht mir nicht hauptsächlich um das Umbenennen der Dateien. Die Files, (.mat) liegen in einem relativ alten Matlabformat vor. Durch das öffnen und neu speichern erreiche ich die Konvertierung der Dateien in das aktuelle Matlabformat welches die Dateien um über Faktor 10 kleiner macht.

Die neuen Namen sollen sich nach dem alten namen richten und etwas neues hinzufügen. So soll aus xyz.mat vielleicht xyz.new_format.mat werden.
 
Jan S
Moderator

Moderator


Beiträge: 11.057
Anmeldedatum: 08.07.10
Wohnort: Heidelberg
Version: 2009a, 2016b
     Beitrag Verfasst am: 12.11.2010, 14:21     Titel:
  Antworten mit Zitat      
Hallo Markus,

Das ist schon etwas ganz anderes, als in Deinem ersten Posting.

Festplattenplatz ist heutzutage enorm billig, so dass sich das Komprimieren wohl erst lohnt, wenn Du ein paar Terabyte gewinnst. Aber funktionieren könnte es so:
Code:

function UpdateMAT(Folder)
  MatDir = dir(fullfile(Folder, '*.mat'));
  MatName = {MatDir.name};
  for iMat = 1:length(MatName)
    aName = MatName{iMat};
    Data = load(fullfile(Folder, aName));
    [dummy, fileName] = fileparts(aName);
    newName = [fileName, '.newFormat.mat'];
    save(fullfile(Folder, newName), '-struct', 'Data');
  end
return;

Gruß, Jan
Private Nachricht senden Benutzer-Profile anzeigen
 
Markus1234

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 12.11.2010, 15:45     Titel:
  Antworten mit Zitat      
Jan S hat Folgendes geschrieben:

Festplattenplatz ist heutzutage enorm billig, so dass sich das Komprimieren wohl erst lohnt, wenn Du ein paar Terabyte gewinnst.


Es handelt sich in Summe um etwa 50.000 Matlabfiles, jedes mit einer Ausgangsgröße von ca. 800 - 1000Mb. Ich überlasse es Dir auszurechnen wie viel Speicherplatz ich da spare Wink. Zudem geht das spätere öffnen für weitere Analysen erheblich schneller. Und Zeit ist Geld wie man weis. Smile

Danke, ich werde dein Script am Montag mal ausprobieren.

Schönes Wochenende!
 
Berlin

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 13.11.2010, 21:10     Titel:
  Antworten mit Zitat      
Markus1234 hat Folgendes geschrieben:


jedes mit einer Ausgangsgröße von ca. 800 - 1000Mb.


NIEMALS, das können keine Scripte sein! Daten vielleicht!
 
Andreas Goser
Forum-Meister

Forum-Meister


Beiträge: 3.654
Anmeldedatum: 04.12.08
Wohnort: Ismaning
Version: 1.0
     Beitrag Verfasst am: 14.11.2010, 20:30     Titel:
  Antworten mit Zitat      
Weitere Ideen zum Sparen...

SINGLE statt DOUBLE spart Faktor 2

Nachdenken über die Datenrate spart oftmals eine ganze Menge. Messwerte liegen z. B. mit 1ms Takt vor, man braucht aber nur 10 ms =>Faktor 10

Andreas
Private Nachricht senden Benutzer-Profile anzeigen E-Mail senden
 
Markus1234

Gast


Beiträge: ---
Anmeldedatum: ---
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 15.11.2010, 08:34     Titel:
  Antworten mit Zitat      
Berlin hat Folgendes geschrieben:


NIEMALS, das können keine Scripte sein! Daten vielleicht!


Natürlich sind es Daten, hab ich irgendwo geschrieben es wären Scripte?

Andreas Goser hat Folgendes geschrieben:


SINGLE statt DOUBLE spart Faktor 2

Nachdenken über die Datenrate spart oftmals eine ganze Menge. Messwerte liegen z. B. mit 1ms Takt vor, man braucht aber nur 10 ms =>Faktor 10


Danke für den Tip, leider sind mir beide Dinge vorgegeben. Den Variablentyp könnte ich vielleicht bei einigen Messwerten runtersetzen, aber ich weiß nicht wie ich automatisch entscheiden sollte bei welchem es ohne Informationsverlust geht und bei welchem nicht. Zudem kostet mich das erheblich Rechenzeit denke ich mal.
Bei der Abtastung ist mir eine Äquidistanz von 20ms vorgegeben.
 
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.