Website Karl Teuschler Die Website von Karl Teuschler   
News
Shellscripts
Alternativenergie
Biotreibstoffe
Blockheizkraftwerke



Meine Shellscripte

  • Hier finden Sie eine Auswahl meiner verwendeten Shellscripts aufgelistet.
  • Verwendung auf eigene Gefahr.
  • Autor übernimmt keine Haftung.
  • Diese Scripte können von Linux aus installiert werden.
  • Es wird ein Verzeichnis /home/user/scripts und ein Verzeichnis /home/user/scripts/lib angelegt, das Script und die Bibliotheken werden dort hinein kopiert, desweiteren wird noch die .bashrc um die Pfade erweitert, damit die Bash die Scripte auch finden kann, zuletzt werden die Scripte noch ausführbar gemacht.
Anregungen verbesserungen, Ideen, können Sie mir über
eMail: karl256.20.teuschleratspamgourmet.com senden.

Diese Scripte sind Freie Software und unterliegen den Lizenzbestimmungen der GNU General Public License (GPL). Viel Spass, beim Testen.


  /scripts/
Path Erweiterung
Einseitige/Mehr-Seitige Dokumente scannen, mehrseitige Dokumente in ein PDF ablegen.
Flac/Wav/Wma Dateien nach MP3 wandeln und Tags schreiben.
Alle AVI-Videos in einem Verzeichnis aneinander haengen.
Alle jpgs eines Verzeichnisbaums nach SW wandeln.
Von allen .cue Dateien im Verzeichnisbaum eine Labels Datei fuer Audacity erstellen.
Von allen .cue und gleichnahmigen .flac Dateien im Verzeichnisbaum splitten
Von allen .cue und gleichnahmigen .flac Dateien im Verzeichnisbaum splitten
Bilder von Digitalkamera nach USB Festplatte verschieben, Ordner werden Chronologisch benannt.
Eine cddb Datei fuer disc-cover erstellen
Dateien Umbenennen, um Verarbeitungs-Reihenfolge im Verzeichnis, zu bestimmen.
Flac nach Wav wandeln, Metatags aus Flac auslesen und in Dateinamen vom wav packen.
Komplete Audio CD rippen CD-Database benutzen nach Flac wandeln, replaygain berechnen.
Flac Dateien nach mp3 konvertieren, aber nur wenn best. Bewertung vorhanden.
Flac Dateien nach mp3 konvertieren, aber nur wenn best. Bewertung vorhanden.
Comment-Tag Playliste von Flac/MP3 Dateien erstellen, oder Dateinamen nach "Comment Interpret - Titel.flac/mp3" umbenennnen u. in neuen Ordner verschieben.
Setzt fuer alle mp3-Dateien im Verzeichnisbaum den Replaygain-Tag.
Metadaten aus Flac/Mp3 Dateien auslesen und "Bpm;Interpret;Titel" in txt-Datei schreiben.
Dateien mit Suchmuster verschieben.
Bpm Suche in txt-Datenbank.
Flac Dateien nach mp3 konvertieren, aber nur wenn best. Bewertung vorhanden.
Nach allen Flac-Dateien suchen und um Replaygain ergaenzen.
Flac nach Wav wandeln, Metatags aus Flac auslesen und in Dateinamen vom wav packen.
Vorhandenes Sensorrauschen in jpgs entfernen.
Nach allen jpg-Dateien suchen und in eine pdf-Datei packen!
Jpeg Dateigroesse, Abmessungen, Dateiart aendern. VideoManual
Front und Back Cover(Jewelcase) einer CD in ein druck-fertiges PDF wandeln. VideoManual
Rotiert alle jpg im Verzeichnis(verlustfrei) um 90 Grad.
Bildunterschrift in jpegs schreiben.
Bibliotheken eines Shell-Scriptes, werden mit dem Hauptscript in einer neuen Datei vereinigt.
Rotiert alle jpg im Verzeichnis(verlustfrei) um 90 Grad.
Ordner Bezeichnung von cue Datei auslesen und Ordner in diesen verschieben.
Dateien nach ihrem Aenderungsdatum umbenennen.
MP3 Dateinamen von ungueltigen Trennzeichen bereinigen ID3 Tags vom Dateinamen generieren und in Datei schreiben.
Verlustfreies Schneiden von MP3-Dateien mit Hilfe von Audacity und mp3splt.
Setzt fuer alle mp3-Dateien im Verzeichnisbaum den Replaygain-Tag.
PDF-Datei in einzelne selectiten zerlegen komprimieren und wider zusammensetzen!
Alle jpeg-Dateien im angegebenen Verzeichniss an eine PDF-Datei haengen.
CSV Datei mit Interpret Titeleintraegen in Sqlite Datenbank von Mixxx inserten.
Ein jpg beliebiger Dateigroesse auf Din Ax Papierformat gewandelt.
Rockbox Firmware-Updater
CD-cover scannen und in ein druckfertiges PDF konvertieren.
Einseitige/Mehr-Seitige Dokumente scannen, mehrseitige Dokumente in ein PDF ablegen.
Shell-Script-Online-Installer.
Shell-Script-Updater.
Dateien nach Zeichenfolge suchen und in neues Verzeichnis verschieben!
Sqlite Datenbank von Mixxx mit Flac Dateien im Dateibaum abgleichen.
1 oder mehrere Verzeichnisse synchron halten. VideoManual
Alle rar Dateien in einem Verzeichniss entpacken.
Konvertiert alle Videos in einem Verzeichnisbaum nach *.avi.
Ein Videofile in jpgs und wav schneiden unter Angabe von Start und Dauer.
Wav Aiff nach Flac wandeln, Zusatz-Informationen(Interpret Titel)Tags schreiben.
Export XCF (Gimp) Dateien nach Jpg.
      /scripts/lib/
Wurde ein Punkt in einer Liste gewaehlt.
Analysiere Verzeichniss/Dateiname nach musikrelevaten Informationen(Interpret Titel etc.).
Metadaten von flac-Dateien auslesen.
Pfad zerlegen in Directory-Pfad Dateiname mit Erweiterung und ohne Erweiterung.
Abmessungen von Images herausfinden.
Ueberpruefe ob Programm auf dem System installiert ist.
Konfigurationsdatei testen.
Print-Aufloesung fuer kprint-Programm einstellen.
Cygwin setup.ini extrahieren.
Cygwin setup.ini extrahieren.
Wurde ein Verzeichnis als Parameter mitgegeben?.
Ist ein Verzeichnisname einmalig in allen Devices/Laufwerke vorhanden.
Dateibackup mit Datums und Urzeitmarkierung im Dateinamen.
Wurde eine Datei als Parameter mitgegeben?
Dateien einlesen.
Verschiedene Dateitypen auf gleichen Namens testen.
Anzahl zu bearbeitender Dateien finden.
Operating-System abfragen.
Enthaelt ein gewaehletes Verzeichnis ein Unterverzeichnis.
Laufwerke/Devices nach einem Verzeichnis scannen.
Laufwerke/Devices nach einem Verzeichnis scannen.
Laufwerke/Devices nach einem Verzeichnis scannen.
Pfad der ersten Datei in einem Verzeichnis ermitteln.
Replay-Gain-Tag vorhanden? Wenn nicht dann generieren.
Eingabelisten verarbeiten.
Differenzzeit 2er Zeitangaben in Sekunden berechnen
Zaehler mit fuehrenden Null generieren.
Abfrage ob Verzeichnis existiert, oder neues anlegen.
Dateien nach String suchen und in neues Verzeichnis verschieben!
ID3-Tags von Mp3 editieren .
Formatierungen fuer Console-Ausgaben.
Wurde ein Parameter mitgegeben?
Zahl der verarbeiteteten Dateien mit den Ausgabedateien vergleichen und Eingabedateien loeschen.
Zeichen ersetzen.
Nach gleichartigen Programmen aus einer Liste suchen.
Daten einer selektierten Listen anzeigen.
Sortiert Txt-Dateien alfabethisch.
Syncdir Pfade in Datei schreiben.
Syncdir Pfade neu anordnen.
Eigenschaften einer Video-Datei abfragen .
 [back]  [back to top]

/scripts/sortfiles

Zur Installation dieses Scriptes einfach nächste Zeile markieren kopieren und danach in der Bash-Shell als User ausführen.
bash <(wget http://trex.at/scripts/setup_script_online -O-) http://trex.at/scripts/sortfiles http://trex.at/scripts/
#!/bin/bash
 
 #- Dateien nach Zeichenfolge suchen und in neues Verzeichnis verschieben! -#
 
 . output_format
 . movefile
 . dir_exists
 . scan_progname_list
 . checkfor
 . replace_signs
 
 
 clear;
 
 parameter_1="${1}"
 
 dir_exists "${1}" "Anwendung: ${red}`replace_signs "${0}"`${ende1} ${green}[dirname]${ende1}
 -- Programm zum bequemen Dateien sortieren --
 
 ${withe_normal}01.) Es wird nach allen Dateien gesucht.${ende1}
  Die Dateipfade werden zerlegt, Dateiname wird ermittelt.
  Dem Dateinamen werden die Dateinamenerweiterung weggeschnitten,
  dann am Anfang und am Ende noch ungueltige Zeichen wie Zahlen,
  Leerzeichen, Striche, Unterstriche entfernt.
  Dann wird alles sortiert, doppelte Eintraege entfernt, und in eine Datei
  geleitet.
 ${withe_normal}02.) Jetzt wird ein Editor mit dieser Datei aufgerufen.${ende1}
  Nicht erwuenschte Eintraege koennen jetzt noch manuel entfernt werden.
  Datei speichern und Editor schliesen.
 ${withe_normal}03.) Programm nochmals starten.${ende1}
  Jetzt wird die zuvor erstellte Liste Zeile fuer Zeile durchgegangen.
  Aus jedem Eintrag/Zeile wird ein Verzeichniss erstellt.
  Dann werden alle Dateien nach diesem Eintrag durchsucht,
  Wenn eine Datei mit passendem Eintrag gefunden wurde, wird diese
  in das neu erstellte Verzeichniss verschoben.
 
 ${withe_normal}Restricktionen${ende1}
  1.) Es werden nur Eintraege gesammelt, die mindenstens in 2 Dateinamen
      vorkommen. 
  2.) Es werden auch nur Dateinamen beruecksichtigt, die mindenstens aus 
      3 Buchstaben bestehen. 
  3.) Dateinamen bestehend nur aus Zahlen werden nicht beruecksichtigt.
 ";
 
 [ ! -d "${HOME}/tmp/" ] && mkdir "${HOME}/tmp/"
 dateiliste="${HOME}/tmp/liste.txt";
 dir_neu="dir_neu";
 
 scan_progname_list edit_app
 edit_app="${progname}";
 
 make_dateiliste(){	
 	[ ! -z "`find "${parameter_1}" -path "${parameter_1}${dir_neu}" -prune -o -type f \
 	-exec basename "{}" \; | cut -d. -f1 | sed -e "s/^[ 0-9_-]*//" -e "s/[ 0-9_-]*$//" | sort | uniq -d | sed -n '/[a-zA-Z]\{3,\}/p'`" ] && \
 	find "${parameter_1}" -path "${parameter_1}${dir_neu}" -prune -o -type f \
 	-exec basename "{}" \; | cut -d. -f1 | sed -e "s/^[ 0-9_-]*//" -e "s/[ 0-9_-]*$//" | sort | uniq -d | sed -n '/[a-zA-Z]\{3,\}/p' \
 	> "${dateiliste}"
 
 	[ -f "${dateiliste}" ] && echo -e "${green}datei${ende1} ${red_bg}"${dateiliste}"${ende1} ${red}existiert nicht${ende1} \
 	erstelle Dateiliste!" && echo -e "Bitte ${red_bg}"${dateiliste}"${ende1} editieren, dann nochmals dieses Programm starten!" && \
 	"${edit_app}" "${dateiliste}";
 	[ ! -f "${dateiliste}" ] && \
 	echo -e "${red}Nichts zu tun! Keine Dateien mit aehnlichen Dateinamen gefunden.${ende1}"
 	
 	exit;
 }
 
 [ ! -f "${dateiliste}" ] && make_dateiliste
 
 
 if test -f "${dateiliste}"; then
 	while read -r line
         do
 		seldir="${parameter_1}${dir_neu}/${line}";
 		[ -n  "${line}" ] && movefile "${parameter_1}" "${line}" "${seldir}" "${dir_neu}";
 		
 	done < "${dateiliste}"
 		find "${1}/" -depth -type d  -exec rmdir {} \; 2>/dev/null
 		rm "${dateiliste}";
 		sync;
 else
 		echo -e ${red_bg}"Liste nicht unter ${dateiliste}"${ende1};
 		exit;
 fi

[back][back to topGeneric Syntax Highlighter
Karl Teuschler A-8283 Bierbaum 28 Bad Blumau