Dateien in Ordner umkopieren.
- DEBIANUNDANDREAS
- Beiträge: 1304
- Registriert: 01.06.2013 10:37:46
Dateien in Ordner umkopieren.
Hallo.
Ich habe ein Programmierproblem.
Ich habe Dateien im Format 30.11.2014Strom-gas.ods auf dem Arbeitsplatz, also Tag.Monat.JahrStrom-gas.ods
Jetzt möchte ich diese Dateien sortieren also umkopieren oder verschieben.
Jeweils in einen Ordner passend dem Monat also 30.11.2014Strom-gas.ods in den Ordner 2014/Nowember.
Mich als Anwendernormallo stellt das vor eine ziemliche, unüberwindbare Hürde.
Wär kann mir Helfen mein obengestecktes Ziel zu erreichen?
Ich habe ein Programmierproblem.
Ich habe Dateien im Format 30.11.2014Strom-gas.ods auf dem Arbeitsplatz, also Tag.Monat.JahrStrom-gas.ods
Jetzt möchte ich diese Dateien sortieren also umkopieren oder verschieben.
Jeweils in einen Ordner passend dem Monat also 30.11.2014Strom-gas.ods in den Ordner 2014/Nowember.
Mich als Anwendernormallo stellt das vor eine ziemliche, unüberwindbare Hürde.
Wär kann mir Helfen mein obengestecktes Ziel zu erreichen?
Re: Dateien in Ordner umkopieren.
Code: Alles auswählen
mv ??.11.2014Strom-gas.ods Nowember
rot: Moderator wanne spricht, default: User wanne spricht.
- DEBIANUNDANDREAS
- Beiträge: 1304
- Registriert: 01.06.2013 10:37:46
Re: Dateien in Ordner umkopieren.
Das geht schon in die richtige Richtung.
- DEBIANUNDANDREAS
- Beiträge: 1304
- Registriert: 01.06.2013 10:37:46
Re: Dateien in Ordner umkopieren.
Allerdings müsste eine Schleifenkonstruktion die jeweiligen Daten (Tag.Monat.JahrStrom-gas.ods) durchlaufen.
Re: Dateien in Ordner umkopieren.
Genau wegen solchen Sachen wurde dir ja woanders [1] geraten, Datumsangaben in Dateinamen nach ISO 8601 zu formulieren. Das sortiert sich nämlich von allein.
[1] viewtopic.php?f=15&t=152467
[1] viewtopic.php?f=15&t=152467
- DEBIANUNDANDREAS
- Beiträge: 1304
- Registriert: 01.06.2013 10:37:46
Re: Dateien in Ordner umkopieren.
Ob es sich sortiert oder nicht, es soll umkopiert werden und das in einem Script.
- Patsche
- Beiträge: 3262
- Registriert: 21.06.2013 01:47:54
- Lizenz eigener Beiträge: MIT Lizenz
- Wohnort: /home/10001101001
Re: Dateien in Ordner umkopieren.
Oder einfach:
Mit Oktober halt:
Und mit einem anderen Jahr:
PS:
Der Monat heißt November nicht Nowember
Code: Alles auswählen
mv *11*2014* 2014/November
Code: Alles auswählen
mv *10*2014* 2014/Oktober
Code: Alles auswählen
mv *10*2013 2013/Oktober
Der Monat heißt November nicht Nowember
Re: Dateien in Ordner umkopieren.
In der Mitte sollte der Stern * ein Punkt . sein, sonst globbt das zum Beispiel auch auf 11.12.2014.foo.Patsche hat geschrieben:Oder einfach:Code: Alles auswählen
mv *11*2014* 2014/November
Gruss Cae
If universal surveillance were the answer, lots of us would have moved to the former East Germany. If surveillance cameras were the answer, camera-happy London, with something like 500,000 of them at a cost of $700 million, would be the safest city on the planet.
—Bruce Schneier
- DEBIANUNDANDREAS
- Beiträge: 1304
- Registriert: 01.06.2013 10:37:46
Re: Dateien in Ordner umkopieren.
Ja schon verstanden aber,mv *11*2014* 2014/November
ich habe aktuell den 1.12.2014 für den und alle folgenden Tage bräuchte ich ein Schleifenscript.
365 Zeilen wären aber zuviel!
- Lord_Carlos
- Beiträge: 5578
- Registriert: 30.04.2006 17:58:52
- Lizenz eigener Beiträge: GNU Free Documentation License
- Wohnort: Dänemark
Re: Dateien in Ordner umkopieren.
Das waeren 12 Zeilen, fuer jeden Monat eine.
Code: Alles auswählen
╔═╗┬ ┬┌─┐┌┬┐┌─┐┌┬┐╔╦╗
╚═╗└┬┘└─┐ │ ├┤ │││ ║║
╚═╝ ┴ └─┘ ┴ └─┘┴ ┴═╩╝ rockt das Forum!
- DEBIANUNDANDREAS
- Beiträge: 1304
- Registriert: 01.06.2013 10:37:46
Re: Dateien in Ordner umkopieren.
Bis 31/ (Tage) *12(monate)=365 Zeilen
- Lord_Carlos
- Beiträge: 5578
- Registriert: 30.04.2006 17:58:52
- Lizenz eigener Beiträge: GNU Free Documentation License
- Wohnort: Dänemark
Re: Dateien in Ordner umkopieren.
Code: Alles auswählen
mv *.11.2014*.odt 2014/November
Demnach brauchst du nur 12 Zeilen (per jahr), eine fuer jeden Monat im jahr.
Edit: Also in etwar:
Code: Alles auswählen
mv *.01.2014*.odt 2014/Januer
...
mv *.10.2014*.odt 2014/Okto-bär
mv *.11.2014*.odt 2014/November
mv *.12.2014*.odt 2014/Dezember
Zuletzt geändert von Lord_Carlos am 01.12.2014 12:10:40, insgesamt 1-mal geändert.
Code: Alles auswählen
╔═╗┬ ┬┌─┐┌┬┐┌─┐┌┬┐╔╦╗
╚═╗└┬┘└─┐ │ ├┤ │││ ║║
╚═╝ ┴ └─┘ ┴ └─┘┴ ┴═╩╝ rockt das Forum!
Re: Dateien in Ordner umkopieren.
Das Fragezeichen ist ein Platzhalter.
??.11.2014.odt steht hier also für alle Dateien die auf .11.2014.odt enden. Im Falle des November also für 30 Dateien.
??.11.2014.odt steht hier also für alle Dateien die auf .11.2014.odt enden. Im Falle des November also für 30 Dateien.
- DEBIANUNDANDREAS
- Beiträge: 1304
- Registriert: 01.06.2013 10:37:46
Re: Dateien in Ordner umkopieren.
Und wie mache ich es das die aktuellste *.ods Datei auf dem Desktop zurückbleibt?
- Lord_Carlos
- Beiträge: 5578
- Registriert: 30.04.2006 17:58:52
- Lizenz eigener Beiträge: GNU Free Documentation License
- Wohnort: Dänemark
Re: Dateien in Ordner umkopieren.
Mhh, ja. Da wird es schwerig. Script erst am ende des Tages laufen lassen? *hust*
Sonnst muesste man sich was komplexeres bauen was alle Tage durchgeht und beim aktuellen stopped. Und dann kommt mal wieder ein Schaltjahr dazwischen und dann hast du den Salat :-/
Sonnst muesste man sich was komplexeres bauen was alle Tage durchgeht und beim aktuellen stopped. Und dann kommt mal wieder ein Schaltjahr dazwischen und dann hast du den Salat :-/
Code: Alles auswählen
╔═╗┬ ┬┌─┐┌┬┐┌─┐┌┬┐╔╦╗
╚═╗└┬┘└─┐ │ ├┤ │││ ║║
╚═╝ ┴ └─┘ ┴ └─┘┴ ┴═╩╝ rockt das Forum!
-
- Beiträge: 3022
- Registriert: 03.11.2009 13:45:23
- Lizenz eigener Beiträge: Artistic Lizenz
-
Kontaktdaten:
Re: Dateien in Ordner umkopieren.
Pack es in eine Schleife und lass das erste oder letzte Argument aus (je nach dem...)DEBIANUNDANDREAS hat geschrieben:Und wie mache ich es das die aktuellste *.ods Datei auf dem Desktop zurückbleibt?
Code: Alles auswählen
#!/bin/bash
FILES=$(ls *.11.2014*.odt)
for((i=1;i<${#FILES[@]};i++));do
echo mv ${FILES[$i]} Ziel/ver/zeich/nis/.
done
das echo zeigt dir nur an, was verschoben würde. Damit kannst du kontrollieren, ob das auch so passt. wenn du diese Schleife "scharf" machst, musst du nur das echo rauslöschen, dann wird tatsächlich gemoved.
lg scientific
PS: Die Reihenfolge kannst du umkehren mit »ls -r«, dann wird das älteste liegen gelassen.
dann putze ich hier mal nur...
Eine Auswahl meiner Skripte und systemd-units.
https://github.com/xundeenergie
auch als Debian-Repo für Testing einbindbar:
deb http://debian.xundeenergie.at/xundeenergie testing main
Eine Auswahl meiner Skripte und systemd-units.
https://github.com/xundeenergie
auch als Debian-Repo für Testing einbindbar:
deb http://debian.xundeenergie.at/xundeenergie testing main
- DEBIANUNDANDREAS
- Beiträge: 1304
- Registriert: 01.06.2013 10:37:46
Re: Dateien in Ordner umkopieren.
Nur wo im Quelltext?Die Reihenfolge kannst du umkehren mit »ls -r«, dann wird das älteste liegen gelassen.
Re: Dateien in Ordner umkopieren.
An der einzigen Stelle, wo im Quelltext ls vorkommt.DEBIANUNDANDREAS hat geschrieben:Nur wo im Quelltext?Die Reihenfolge kannst du umkehren mit »ls -r«, dann wird das älteste liegen gelassen.
Gruss Cae
If universal surveillance were the answer, lots of us would have moved to the former East Germany. If surveillance cameras were the answer, camera-happy London, with something like 500,000 of them at a cost of $700 million, would be the safest city on the planet.
—Bruce Schneier
-
- Beiträge: 3022
- Registriert: 03.11.2009 13:45:23
- Lizenz eigener Beiträge: Artistic Lizenz
-
Kontaktdaten:
Re: Dateien in Ordner umkopieren.
Er könnts ja im eigenen Namen mal probieren... Oder im Aufzug in der Arbeit an die Decke kritzeln...Cae hat geschrieben:An der einzigen Stelle, wo im Quelltext ls vorkommt.DEBIANUNDANDREAS hat geschrieben:Nur wo im Quelltext?Die Reihenfolge kannst du umkehren mit »ls -r«, dann wird das älteste liegen gelassen.
Gruss Cae
So genug böse. @DEBIANUNDANDREAS... ev. studierst du einmal ein paar Seiten mit Beispielen von Shell-Programmierung und probierst aus, was dort gezeigt wird. SO habs ich nämlich auch gelernt.
lg scientific
dann putze ich hier mal nur...
Eine Auswahl meiner Skripte und systemd-units.
https://github.com/xundeenergie
auch als Debian-Repo für Testing einbindbar:
deb http://debian.xundeenergie.at/xundeenergie testing main
Eine Auswahl meiner Skripte und systemd-units.
https://github.com/xundeenergie
auch als Debian-Repo für Testing einbindbar:
deb http://debian.xundeenergie.at/xundeenergie testing main
- DEBIANUNDANDREAS
- Beiträge: 1304
- Registriert: 01.06.2013 10:37:46
Re: Dateien in Ordner umkopieren.
Ich hab dein Script dementsprechen bereinigt, aber ichlasse es jetzt erstmal bei dem erwähnten echo mv.
-
- Beiträge: 3022
- Registriert: 03.11.2009 13:45:23
- Lizenz eigener Beiträge: Artistic Lizenz
-
Kontaktdaten:
Re: Dateien in Ordner umkopieren.
"bereinigt"??? Hast du es von "unnötigem" Crap-Code bereinigt?DEBIANUNDANDREAS hat geschrieben:Ich hab dein Script dementsprechen bereinigt, aber ichlasse es jetzt erstmal bei dem erwähnten echo mv.
Mit "echo mv" verschiebst du nichts. Es wird dir nur angezeigt, was verschoben würde. Und wenn das passt, dann lösch das echo raus, und es wird tatsächlich verschoben. Ich teste skripts immer so, bevor ich sie auf meine Daten loslasse...
dann putze ich hier mal nur...
Eine Auswahl meiner Skripte und systemd-units.
https://github.com/xundeenergie
auch als Debian-Repo für Testing einbindbar:
deb http://debian.xundeenergie.at/xundeenergie testing main
Eine Auswahl meiner Skripte und systemd-units.
https://github.com/xundeenergie
auch als Debian-Repo für Testing einbindbar:
deb http://debian.xundeenergie.at/xundeenergie testing main
Re: Dateien in Ordner umkopieren.
Sowas?
Code: Alles auswählen
$ for i in $(seq 0 1 12); do echo mkdir -p $(date -d "$i month ago" "+%Y/%m"); done
mkdir -p 2014/12
mkdir -p 2014/11
mkdir -p 2014/10
mkdir -p 2014/09
mkdir -p 2014/08
mkdir -p 2014/07
mkdir -p 2014/06
mkdir -p 2014/05
mkdir -p 2014/04
mkdir -p 2014/03
mkdir -p 2014/02
mkdir -p 2014/01
mkdir -p 2013/12
mfg rendegast
-----------------------
Viel Eifer, viel Irrtum; weniger Eifer, weniger Irrtum; kein Eifer, kein Irrtum.
(Lin Yutang "Moment in Peking")
-----------------------
Viel Eifer, viel Irrtum; weniger Eifer, weniger Irrtum; kein Eifer, kein Irrtum.
(Lin Yutang "Moment in Peking")
- DEBIANUNDANDREAS
- Beiträge: 1304
- Registriert: 01.06.2013 10:37:46
Re: Dateien in Ordner umkopieren.
Schaut interessant aus.