Vom einfachen Programm zum fertigen Debian-Paket, Fragen rund um Programmiersprachen, Scripting und Lizenzierung.
-
instinctless
- Beiträge: 110
- Registriert: 23.03.2007 11:42:46
- Lizenz eigener Beiträge: GNU Free Documentation License
- Wohnort: nähe Hannover
-
Kontaktdaten:
Beitrag
von instinctless » 30.09.2009 11:15:25
hi,
folgendes...
eine kamera macht bilder und kopiert diese auf einen server. die namen der bilder tragen sind die entsprechende uhrzeit der aufnahme. ich möchte nun. ich möchte nun bestimmte bilder aussortieren. und zwar das erste in stunde 10, stunde 13 und stunde 16
mein ansatz ist:
für die bild aus stunde 10.
logischerweise werden mir so aber alle bilder ausgegeben die um 10:00 gemacht wurden, das sind 6 bilder da die cam alle 10 sekunden ein bild macht. ich möchte aber nur das erste.
wie müsste ich mein grep ergänzen um es sinnvoll zu lösen?
-
hikaru
- Moderator
- Beiträge: 13931
- Registriert: 09.04.2008 12:48:59
Beitrag
von hikaru » 30.09.2009 11:30:24
Wie wäre es damit?:
Eine komplette Beispielausgabe von
ls wäre übrigens hilfreicher als eine Prosabeschreibung der Dateien.
Edit:
nicht
head sondern
tail
-
Meillo
- Moderator
- Beiträge: 9254
- Registriert: 21.06.2005 14:55:06
- Wohnort: Balmora
-
Kontaktdaten:
Beitrag
von Meillo » 30.09.2009 11:34:08
Falls die Zeitstempel nicht mit den Dateinamen übereinstimmen besser nach dem Name sortieren:
Use ed once in a while!
-
Meillo
- Moderator
- Beiträge: 9254
- Registriert: 21.06.2005 14:55:06
- Wohnort: Balmora
-
Kontaktdaten:
Beitrag
von Meillo » 30.09.2009 11:35:18
hikaru hat geschrieben:Edit:
nicht head sondern tail
oder dem ls ein `-r' übergeben.
Use ed once in a while!
-
hikaru
- Moderator
- Beiträge: 13931
- Registriert: 09.04.2008 12:48:59
Beitrag
von hikaru » 30.09.2009 11:38:07
Meillo hat geschrieben:Falls die Zeitstempel nicht mit den Dateinamen übereinstimmen besser nach dem Name sortieren:
Das geht auch einfacher:
Edit:
D'oh! Hier jetzt
head statt
tail
-
instinctless
- Beiträge: 110
- Registriert: 23.03.2007 11:42:46
- Lizenz eigener Beiträge: GNU Free Documentation License
- Wohnort: nähe Hannover
-
Kontaktdaten:
Beitrag
von instinctless » 30.09.2009 11:43:01
danke
head war quasi das was ich gesucht habe.
-
Meillo
- Moderator
- Beiträge: 9254
- Registriert: 21.06.2005 14:55:06
- Wohnort: Balmora
-
Kontaktdaten:
Beitrag
von Meillo » 30.09.2009 12:05:50
hikaru hat geschrieben:Meillo hat geschrieben:Falls die Zeitstempel nicht mit den Dateinamen übereinstimmen besser nach dem Name sortieren:
Das geht auch einfacher:
Stimmt, das sort ist (vermutlich) überflüssig.
(Ich bin mir nur nicht sicher ob ls garantiert alphabetisch sortiert ... die Website der SUS ist gerade leider down.)
Use ed once in a while!
-
chrisbra
- Beiträge: 122
- Registriert: 19.10.2005 09:36:09
- Wohnort: Sachsen-Anhalt
-
Kontaktdaten:
Beitrag
von chrisbra » 30.09.2009 12:17:55
Meillo hat geschrieben:(Ich bin mir nur nicht sicher ob ls garantiert alphabetisch sortiert ... die Website der SUS ist gerade leider down.)
Garantiert nicht. Hängt von Deiner Locale ab, IIRC
-
hikaru
- Moderator
- Beiträge: 13931
- Registriert: 09.04.2008 12:48:59
Beitrag
von hikaru » 30.09.2009 12:22:45
man ls hat geschrieben:NAME
ls - list directory contents
SYNOPSIS
ls [OPTION]... [FILE]...
DESCRIPTION
List information about the FILEs (the current directory by default). Sort entries alphabetically if none of -cftuvSUX nor --sort.
-
Meillo
- Moderator
- Beiträge: 9254
- Registriert: 21.06.2005 14:55:06
- Wohnort: Balmora
-
Kontaktdaten:
Beitrag
von Meillo » 30.09.2009 12:30:04
hikaru hat geschrieben:man ls hat geschrieben:NAME
ls - list directory contents
SYNOPSIS
ls [OPTION]... [FILE]...
DESCRIPTION
List information about the FILEs (the current directory by default). Sort entries alphabetically if none of -cftuvSUX nor --sort.
ja schon, aber das ist halt die GNU-Implementierung und keineswegs der Standard.
Ich hätte halt gerne in den SUS geschaut, aber die ist down.
Egal ... es wäre sowieso nur eine pedantische Kleinigkeit gewesen. Und das Problem ist ja auch schon gelöst.
Use ed once in a while!
-
GoKi
- Beiträge: 2068
- Registriert: 04.07.2003 23:08:56
- Lizenz eigener Beiträge: MIT Lizenz
Beitrag
von GoKi » 30.09.2009 12:32:55
LC_COLLATE ist dafür zuständig, auch für sort.
Code: Alles auswählen
$ touch A B C D
$ touch a b c d
$ LC_COLLATE=de_DE.UTF-8 ls
a A b B c C d D
$ LC_COLLATE=C ls
A B C D a b c d
MfG GoKi
:wq
-
chrisbra
- Beiträge: 122
- Registriert: 19.10.2005 09:36:09
- Wohnort: Sachsen-Anhalt
-
Kontaktdaten:
Beitrag
von chrisbra » 30.09.2009 12:45:05
hikaru hat geschrieben:man ls hat geschrieben:NAME
ls - list directory contents
SYNOPSIS
ls [OPTION]... [FILE]...
DESCRIPTION
List information about the FILEs (the current directory by default). Sort entries alphabetically if none of -cftuvSUX nor --sort.
Äh ja, und das hilft dir genau wie, wenn vorher schon Globbing stattfindet?
Hängt natürlich trotzdem von $LS_COLLATE ab.
-
hikaru
- Moderator
- Beiträge: 13931
- Registriert: 09.04.2008 12:48:59
Beitrag
von hikaru » 30.09.2009 13:11:25
chrisbra hat geschrieben:Äh ja, und das hilft dir genau wie, wenn vorher schon Globbing stattfindet?
Sofern man davon ausgeht, dass dabei im Großen und Ganzen sinnvolle Ergebnisse herauskommen sollen sehe ich nicht, warum man $LC_COLLATE so wählen sollte, dass nicht alphabetisch aufsteigend sortiert wird. Kennst du ein Gegenbeispiel?
Ob
a A b B oder
A B a b sortiert wird spielt in diesem Fall keine Rolle.
-
chrisbra
- Beiträge: 122
- Registriert: 19.10.2005 09:36:09
- Wohnort: Sachsen-Anhalt
-
Kontaktdaten:
Beitrag
von chrisbra » 30.09.2009 13:38:32
chrisbra hat geschrieben:Äh ja, und das hilft dir genau wie, wenn vorher schon Globbing stattfindet?
Das ist natürlich erstmal Blödsinn, denn hinterher sortiert ls dann halt im Zweifel um.
hikaru hat geschrieben:Sofern man davon ausgeht, dass dabei im Großen und Ganzen sinnvolle Ergebnisse herauskommen sollen sehe ich nicht, warum man $LC_COLLATE so wählen sollte, dass nicht alphabetisch aufsteigend sortiert wird. Kennst du ein Gegenbeispiel?
Ob a A b B oder A B a b sortiert wird spielt in diesem Fall keine Rolle.
Nein. Man sollte halt nur im Hinterkopf behalten, dass es da Unterschiede geben kann.