Sie sind nicht angemeldet.

Lieber Besucher, herzlich willkommen bei: Linux Forum Linux-Web.de. Falls dies Ihr erster Besuch auf dieser Seite ist, lesen Sie sich bitte die Hilfe durch. Dort wird Ihnen die Bedienung dieser Seite näher erläutert. Darüber hinaus sollten Sie sich registrieren, um alle Funktionen dieser Seite nutzen zu können. Benutzen Sie das Registrierungsformular, um sich zu registrieren oder informieren Sie sich ausführlich über den Registrierungsvorgang. Falls Sie sich bereits zu einem früheren Zeitpunkt registriert haben, können Sie sich hier anmelden.

1

08.09.2009, 00:30

Alles finden was nur aus Großbuchstaben besteht

Hallo zusammen,

Wie kann ich in einem Shellskript Dateien und Ordner finden, die nur aus Großbuchstaben bestehen oder Umlaute enthalten?

Ich glaube ich bin dem schon auf der Spur, aber so ganz kommt noch nicht das heraus, was ich suche:

find . -maxdepth 1 -not -wholename "./.*" -name "*[äöüÄÜÖßA-Z]*" -type f -print

Das liefert mir schon mal alle Dateien im momentanen Verzeichnis mit Umlauten aber leider auch alle, die auch nur einen Großbuchstaben haben. Ich möchte aber nur jene finden, die nur aus Großbuchstaben bestehen, also eine Datei wie AAAAAA.JPG aber eben nicht eine Date wie Aaaaa.JPG auch nicht aaAaa.jpg.

Vielleicht hat ja einer von Euch eine Idee

Danke!

2

08.09.2009, 10:52

RE: Alles finden was nur aus Großbuchstaben besteht

moin moin,

was waere wenn du die Suche aufteilst und das suchst:

find . -maxdepth 1 -not -wholename "./.*" -name ".[:upper:]*" -type f -print
for Windows problems: reboot
for Linux problems: be root

Dieser Beitrag wurde bereits 3 mal editiert, zuletzt von »BorneBjoern« (08.09.2009, 10:57)


3

08.09.2009, 12:01

RE: Alles finden was nur aus Großbuchstaben besteht

moin :)

Danke für Deine Antwort!

Ich glaub ich hab's jetzt:
find . -maxdepth 1 -not -wholename "./.*" -not -name "*[a-z]*.*" -name "*[äöüÄÖÜßA-Z()\[\]\{\}]*" -type f -print

Laut Doku filtert find von links nach rechts und das Ergebnis sieht schon recht vielversprechend aus.

Das Ganze kommt in ein Skript und soll durch mehrere Platten laufen, da wollte ich die Schleifen nicht mehrfach durchlaufen müssen. Das -maxdepth wird dann wieder entfernt, das dient imMo nur zum Testen.

Aber trotzdem - nochmal DANKE - das hat mich auf die Idee gebracht.

4

20.09.2009, 12:15

Ich würde das "-type f" weit nach links tun, weil das geht dann ein bisschen schneller.

Thema bewerten