Grossbuchstaben duch Kleinbuchstaben ersetzen

B

bwRavencl

Grünschnabel
Hallo zusammen,

ich suche nach einem Shell Skript mit dem ich bei allen Dateien die sich in einem bestimmten Ordner befinden die Großbuchstaben durch Kleinbuchstaben ersetzt werden.
Also z.B.: "AH-1F_OP4.dat" -> "ah-1f_op4.dat"
Wenn mir jemand helfen könnte wäre ich sehr dankbar.

Grüße,
Raven
 
Code:
#!/bin/bash

FILES="$1"
ME="$(basename $0)"

# function to display message and exit with given exit code
function die(){
  echo -e "$1"
  exit $2
}

# exit if no command line argument given
[ "$FILES" == "" ] && die "Syntax: $ME {file-name}\nExamples:\n $ME xyz\n $ME \"*.jpg\"" 1 || :
# scan for all input file
for i in $FILES
do
   # see if upper to lower OR lower to upper by command name
   [ "$ME" == "2upper" ] && N="$(echo "$i" | tr [a-z] [A-Z])" ||  N="$(echo "$i" | tr [A-Z] [a-z])"
   # if source and dest file not the same then rename it  
   [ "$i" != "$N" ] &&  mv "$i" "$N" || :
done

das Scripts ausführbar machen, und so aufrufen:
Code:
script.sh AH-1F_OP4.dat
oder
Code:
script.sh "*.dat"
 
Super hat einwandfrei funktioniert!

Vielen Dank,
Raven
 
Geht auch in einer Zeile:
Code:
ls -1 | while read file; do mv $file $(echo $file | tr [:upper:] [:lower:]); done
Wobei der Parameter von 'ls' eine 1 (eins) ist und kein kleines L.

Gruss
d22
 
...4 Jahre später, mal sehen ob das noch jemand liest


Hallo Experten!

ich hab ein /Verzeichnis (bzw. mehrere) mit einer Menge an XML und TXT ggf. auch HTML Dateien in denen ein Wirrwar an Groß- und Kleinschreibungen herrscht. Problem an der Sache ist: ich muss sowohl die Ordner, also auch die Pfade IN den Dateien auf einen Nenner bringen, weil sonst die Sprungmarken aufgrund von geänderter Pfade von ursprünglich /Anfangsbuchstabe groß (im Verzeichnisnamen) später nicht mehr gefunden wird. Mach ich alles klein (Ordner von Html nach html und Config.xml nach config.xml sowie die Pfade in den Dateien usw.), wie es sein soll - gibts keine Probs mehr.

Weiss hier jemand Rat bzw. den korrekten Syntax?


Grüsse
STR
 

Ähnliche Themen

PHP funktioniert, nur Web-Aufrufe mit Optionen nicht.

Mit ldapsearch das Active Directory durchsuchen

Samba 3.6.25 - OpenLDAP Setup

Keine grafische Oberfläche (Debian Installation)

Welches Linux/Unix für ehemaligen OSX Nutzer?

Zurück
Oben