Einzeiler: Unterschied zwischen den Versionen
Aus MindLoot
(Quelle: El RIDO) |
(→Texte aufbereiten: Neue GNU sed-Versionen enthalten den i-Paramter fürs "inplace"-Arbeiten) |
||
(9 dazwischenliegende Versionen desselben Benutzers werden nicht angezeigt) | |||
Zeile 1: | Zeile 1: | ||
Hier einige nützliche Einzeiler für die Shell: |
Hier einige nützliche Einzeiler für die Shell: |
||
− | == Massenumbennenungen == |
||
+ | == Notfälle == |
||
+ | |||
+ | Folgende Tipps dienen der ersten Hilfe in Notsituationen. Kurz: You know what you doing! ;-) |
||
+ | |||
+ | === Neustarten === |
||
+ | <pre># reboot</pre> |
||
+ | oder |
||
+ | <pre># init 6</pre> |
||
+ | oder um lokal neuzustarten, drücke [Ctrl]+[Alt]+[Delete] |
||
+ | |||
+ | === Herunterfahren === |
||
+ | <pre># shutdown -h now</pre> |
||
+ | oder |
||
+ | <pre># init 5</pre> |
||
+ | |||
+ | === Terminal zurückzusetzen === |
||
+ | Das ist z.B. nötig, wenn man wieder mal eine binäre Datei mit "cat" betrachten wollte. |
||
+ | <pre>$ reset</pre> |
||
+ | oder |
||
+ | <pre>$ setterm -reset</pre> |
||
+ | |||
+ | == Dateien == |
||
+ | |||
+ | === Dateien nach Alter === |
||
+ | $ ls -altr |
||
=== Dateinamen ergänzen === |
=== Dateinamen ergänzen === |
||
− | + | $ for file in * ; do mv "$file" "muster_$file"; done; |
|
=== Dateiendung anpassen === |
=== Dateiendung anpassen === |
||
− | + | $ for file in *.htm ; do mv $file `echo $file | sed 's/\(.*\.\)htm/\1html/'`; done; |
|
+ | |||
+ | === Rechte von Dateien, aber nicht von Ordnern anpassen === |
||
+ | $ find ./ -type f -exec chmod 640 "{}" + |
||
+ | |||
+ | === Enkodieren und Dekodieren mit OpenSSL === |
||
+ | $ openssl enc -base64 -in Klartext-Datei -out E-Mail-Anhang.b64 |
||
+ | $ openssl enc -d -base64 -in E-Mail-Anhang.b64 -out Klartext-Datei |
||
+ | |||
+ | $ openssl enc -e -aes-256-cbc -in Datei -out Datei.aes |
||
+ | $ openssl enc -d -aes-256-cbc -in Datei.aes -out Datei |
||
+ | |||
+ | == Texte aufbereiten == |
||
+ | |||
+ | Folgende Beispiele dienen dem Aufbereiten einzelner Einträge eines MySQL-Dumps für's rückspielen in die Datenbank. |
||
+ | |||
+ | === Suchen und ersetzen mit sed === |
||
+ | |||
+ | <pre>$ sed -i "s/suchtext/ersatztext/g" backup.sql |
||
+ | $ sed -i 's/),(/),\n(/g' backup.sql</pre> |
||
+ | |||
+ | === Suchen und löschen von Zeilen mit sed === |
||
+ | |||
+ | <pre>$ sed -i "/suchtext/d" backup.sql</pre> |
||
+ | |||
+ | === Ausgeben bestimmter Zeilen mit grep === |
||
+ | |||
+ | <pre>$ grep "suchtext" eingabe.sql > ausgabe.sql</pre> |
Aktuelle Version vom 23. März 2011, 17:58 Uhr
Hier einige nützliche Einzeiler für die Shell:
Inhaltsverzeichnis
Notfälle
Folgende Tipps dienen der ersten Hilfe in Notsituationen. Kurz: You know what you doing! ;-)
Neustarten
# reboot
oder
# init 6
oder um lokal neuzustarten, drücke [Ctrl]+[Alt]+[Delete]
Herunterfahren
# shutdown -h now
oder
# init 5
Terminal zurückzusetzen
Das ist z.B. nötig, wenn man wieder mal eine binäre Datei mit "cat" betrachten wollte.
$ reset
oder
$ setterm -reset
Dateien
Dateien nach Alter
$ ls -altr
Dateinamen ergänzen
$ for file in * ; do mv "$file" "muster_$file"; done;
Dateiendung anpassen
$ for file in *.htm ; do mv $file `echo $file | sed 's/\(.*\.\)htm/\1html/'`; done;
Rechte von Dateien, aber nicht von Ordnern anpassen
$ find ./ -type f -exec chmod 640 "{}" +
Enkodieren und Dekodieren mit OpenSSL
$ openssl enc -base64 -in Klartext-Datei -out E-Mail-Anhang.b64 $ openssl enc -d -base64 -in E-Mail-Anhang.b64 -out Klartext-Datei
$ openssl enc -e -aes-256-cbc -in Datei -out Datei.aes $ openssl enc -d -aes-256-cbc -in Datei.aes -out Datei
Texte aufbereiten
Folgende Beispiele dienen dem Aufbereiten einzelner Einträge eines MySQL-Dumps für's rückspielen in die Datenbank.
Suchen und ersetzen mit sed
$ sed -i "s/suchtext/ersatztext/g" backup.sql $ sed -i 's/),(/),\n(/g' backup.sql
Suchen und löschen von Zeilen mit sed
$ sed -i "/suchtext/d" backup.sql
Ausgeben bestimmter Zeilen mit grep
$ grep "suchtext" eingabe.sql > ausgabe.sql