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

Speicherdatum ändern

 

laupl
Forum-Century

Forum-Century


Beiträge: 106
Anmeldedatum: 15.03.13
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 18.03.2021, 12:46     Titel: Speicherdatum ändern
  Antworten mit Zitat      
Hallo,
über die Jahre haben sich bei mir haufenweise Matlab-Funktionen angesammelt, die ich zwar ab und an noch verwende, an denen ich aber keine Änderungen mehr vornehme. Entsprechend alt ist das jeweilige Speicherdatum. Nun werden in meiner Firma IT-seitig immer wieder sämtliche Dateien gelöscht, deren Speicherdatum älter als ein bestimmter Stichtag ist.
Und nun die Frage: Wie kann ich möglichst elegant mittels Matlab das Speicherdatum ändern?
Gibt es da vielleicht einen "direkten" Weg?
Oder müsste ich alle Dateien nacheinander öffnen, ändern, Änderung rückgängig machen und wieder schließen?
Falls nur der zweite Weg möglich ist: Wie mache ich das? Kann ich grundsätzlich ein Skript schreiben, das Funktionen (alle in einem Ordner) entsprechend bearbeitet? Hier wäre ich über ein paar Schlagworte bzw. die Nennung hilfreicher Funktionen dankbar.

Dankeschön, Grüße
Private Nachricht senden Benutzer-Profile anzeigen


Busmaster
Forum-Anfänger

Forum-Anfänger


Beiträge: 16
Anmeldedatum: 05.08.09
Wohnort: Dresden
Version: ---
     Beitrag Verfasst am: 18.03.2021, 14:11     Titel:
  Antworten mit Zitat      
Hallo,

es geht ganz unkompliziert mit FreeCommander:
Alle gewünschten Dateien im Verzeichnis markieren & Erstelldatum und Änderungsdatum setzen. Fertig!

Gruß
Busmaster
Private Nachricht senden Benutzer-Profile anzeigen
 
Mmmartina
Forum-Meister

Forum-Meister


Beiträge: 745
Anmeldedatum: 30.10.12
Wohnort: hier
Version: R2020a
     Beitrag Verfasst am: 18.03.2021, 14:14     Titel:
  Antworten mit Zitat      
Für solche reinen Dateioperationen würde ich ehr an ein kleines Batchprogramm denken, welches für alle Dateien in einem Ordner eine Copy auf sich selbst anlegt. Dadurch sollte das Speicherdatum erneuert werden. (Gefahr dabei: wenn Datei sehr groß, dauert das. Wenn was schief geht, ist Datei weg.)
Alternativ auch per batch: Ordner mit den files komplett kopieren, alten Ordner entfernen. Neuen Ordner in alten Ordnernamen umbenennen.


Aber letzen Endes geht genau das auch mit Matlab.

Per "dir" die files listen lassen, diese Kopieren (copyfile) oder verschieben (movefile).
Oder das gesamte Verzeichnis kopieren, altes löschen (rmdir) neues umbenennen.

Code:

_________________

LG
Martina

"Wenn wir bedenken, daß wir alle verrückt sind, ist das Leben erklärt." (Mark Twain))
Private Nachricht senden Benutzer-Profile anzeigen
 
Mmmartina
Forum-Meister

Forum-Meister


Beiträge: 745
Anmeldedatum: 30.10.12
Wohnort: hier
Version: R2020a
     Beitrag Verfasst am: 18.03.2021, 14:17     Titel:
  Antworten mit Zitat      
Busmaster hat Folgendes geschrieben:
Hallo,

es geht ganz unkompliziert mit FreeCommander:
Alle gewünschten Dateien im Verzeichnis markieren & Erstelldatum und Änderungsdatum setzen. Fertig!

Gruß
Busmaster


Je nach Firma sind (berechtigter Weise) die nutzbaren Tools stark begrenzt.
_________________

LG
Martina

"Wenn wir bedenken, daß wir alle verrückt sind, ist das Leben erklärt." (Mark Twain))
Private Nachricht senden Benutzer-Profile anzeigen
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.448
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 18.03.2021, 14:28     Titel:
  Antworten mit Zitat      
Hallo,

Zitat:
Nun werden in meiner Firma IT-seitig immer wieder sämtliche Dateien gelöscht, deren Speicherdatum älter als ein bestimmter Stichtag ist.

Diese pauschale Vorgehensweise finde ich sehr bedenklich und würde sie hinterfragen.

Man kann sich ja durchaus überlegen, "unwichtige" Daten zu löschen. Das Datum der letzten Änderung ist für mich aber bestenfalls ein Indikator für Wichtigkeit, auf den ich mich nie alleine verlassen wollen würde. Es ist ja beispielsweise möglich, dass Informationen oder Code immer wieder verwendet (= gelesen, ausgeführt) wird ohne geändert zu werden.

Ich würde es so sehen, dass die Kosten von Festplattenspeicher im Verhältnis zum Verlust wichtiger Informationen oder Codes vernachlässigbar sein dürften.

Eine weitere Möglichkeit, die schnell und wenig fehleranfällig sein dürfte: entsprechende Dateien mit fopen zum Schreibzugriff öffnen (Option "w") und anschließend mit fclose wieder schließen.

Grüße,
Harald
_________________

1.) Ask MATLAB Documentation
2.) Search gomatlab.de, google.de or MATLAB Answers
3.) Ask Technical Support of MathWorks
4.) Go mad, your problem is unsolvable ;)
Private Nachricht senden Benutzer-Profile anzeigen
 
laupl
Themenstarter

Forum-Century

Forum-Century


Beiträge: 106
Anmeldedatum: 15.03.13
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 18.03.2021, 14:59     Titel:
  Antworten mit Zitat      
Hallo,
erstmal Danke für die Antworten.

Ich habe mich wohl falsch ausgedrückt - sorry Embarassed
Es geht um das Änderungsdatum, nicht um das Speicherdatum.

Und das Änderungsdatum bleibt mit copyfile, movefile, fopen, fclose leider unverändert. Oder bin ich zu doof?

@Harald: Ich bin von dieser Vorgehensweise auch nicht begeistert. Aber je nach Firma muss man leider manche Dinge einfach hinnehmen bzw. irgendwie damit umgehen Confused

Weitere Ideen/Hinweise?
Private Nachricht senden Benutzer-Profile anzeigen
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.448
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 18.03.2021, 16:00     Titel:
  Antworten mit Zitat      
Hallo,

mit fopen(..., "w") / fclose ändert sich bei mir (Windows 10) das Änderungsdatum.

Ich habe mir abgewöhnt, wegen jeder Kleinigkeit auf die Barrikaden zu gehen. Das ist für mich aber keine Kleinigkeit, weil es beträchtlichen Schaden anrichten kann. Wenn das einzelne Anwender dazu bringt, das Änderungsdatum ihrer Dateien künstlich zu verjüngen, ist durch die Aktion an sich ja auch nichts gewonnen.

Wie sieht es dann bei euch eigentlich mit Daten-Backup aus? Würden die gelöschten Dateien auch aus den Backups entfernt?

Grüße,
Harald
_________________

1.) Ask MATLAB Documentation
2.) Search gomatlab.de, google.de or MATLAB Answers
3.) Ask Technical Support of MathWorks
4.) Go mad, your problem is unsolvable ;)
Private Nachricht senden Benutzer-Profile anzeigen
 
laupl
Themenstarter

Forum-Century

Forum-Century


Beiträge: 106
Anmeldedatum: 15.03.13
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 19.03.2021, 09:29     Titel:
  Antworten mit Zitat      
Hi,

sorry - ich hatte das "w" übersehen. Dankeschön Very Happy

Ehrlichgesagt habe ich keinen blassen Schimmer, wie das bei uns (Großkonzern) im Detail tatsächlich abläuft. Ich gehe aber davon aus, dass die IT-Abteilung schon weiß, was sie tut. Hoffentlich...

Grüße
Private Nachricht senden Benutzer-Profile anzeigen
 
laupl
Themenstarter

Forum-Century

Forum-Century


Beiträge: 106
Anmeldedatum: 15.03.13
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 19.03.2021, 12:46     Titel:
  Antworten mit Zitat      
Jetzt muss ich das Thema doch nochmals aufwärmen.

Das "w" löscht ja alle Inhalte. Was natürlich schlecht ist.
Ich habe es jetzt in etwa so gelöst
Code:

fileID=fopen('Pfad+Name','a');
fprintf(fileID,'%%')
fclose('all')
 

Damit habe ich ein aktuelles Änderungsdatum. Und ein % am Ende jeder Datei, was mich nicht stört. Im Grunde ist das ja der Weg öffnen, ändern, schließen.

Funktionierende Lösung habe ich jetzt.
Aus reinem Interesse: Geht es eleganter? Oder doch irgendwie mit dem "w"?
Private Nachricht senden Benutzer-Profile anzeigen
 
Jan S
Moderator

Moderator


Beiträge: 11.057
Anmeldedatum: 08.07.10
Wohnort: Heidelberg
Version: 2009a, 2016b
     Beitrag Verfasst am: 19.03.2021, 13:52     Titel: Re: Speicherdatum ändern
  Antworten mit Zitat      
Hallo laupl,
Zitat:
Nun werden in meiner Firma IT-seitig immer wieder sämtliche Dateien gelöscht, deren Speicherdatum älter als ein bestimmter Stichtag ist.

Wow, das ist eine sehr bedenkliche Strategie. Eigentlich schießt dir die IT damit Lächer ins Knie.

Arbeitest du mit Windows? Dann hilft https://www.mathworks.com/matlabcen.....leexchange/24671-filetime.
Code:
Today = datevec(now);
Folder = 'D:\Your\MFiles';
FileList = dir(fullfile(Folder, '**', '*.*'));
FileList([FileList.isdir]) = [];   % Remove folders
for k = 1:numel(FileList)
  File = fullfile(FileList(k).folder, FileList(k).name);
  try
    SetFileTime(File, 'Write', Today);
  catch  % Write protected? Currently accessed?
    fprintf(2, 'Cannot touch file: %s\n', File);
  end
end


Matlab ist eigentlich ein Overkill dafür. Wie wäre: https://www.nirsoft.net/utils/bulk_file_changer.html
Gruß Jan
Private Nachricht senden Benutzer-Profile anzeigen
 
Mmmartina
Forum-Meister

Forum-Meister


Beiträge: 745
Anmeldedatum: 30.10.12
Wohnort: hier
Version: R2020a
     Beitrag Verfasst am: 20.03.2021, 17:51     Titel:
  Antworten mit Zitat      
@Jan S:
Wenn die IT bereits bei der Datenlöschung so restriktiv ist, wird die Nutzung von Programmen sicherlich genauso restriktiv eingeschränkt. (sonst hätte ja auch der Vorschlag mit dem FreeCommader weiter oben bereits geholfen)

Ja, Matlab ist dafür Overkill - daher auch mein Vorschlag ein einfaches Batchprogramm zu schreiben.


ABER: ich würde das ganze vermutlich nach oben Eskalieren.
Dafür müsste es Strukturen im Unternehmen geben. Also nochmal ausführlich und klar darlegen, was das Problem ist (Datenverlust, etc.) und dann an deinen Vorgesetzten geben. Und dann Ebene für Ebene nach oben ...
Spätestens, wenn der IT-Manager Rede und Antwort stehen muss, warum das so restriktiv gehandhabt wird, wird es spannend.
_________________

LG
Martina

"Wenn wir bedenken, daß wir alle verrückt sind, ist das Leben erklärt." (Mark Twain))
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.