WCM Forum

WCM Forum (http://www.wcm.at/forum/index.php)
-   Linux, UNIX, Open Source (http://www.wcm.at/forum/forumdisplay.php?f=13)
-   -   Tipps und Tricks (http://www.wcm.at/forum/showthread.php?t=177707)

citizen428 07.11.2005 13:38

Tipps und Tricks
 
Nachdem sich hier ja einige recht talentierte Leute rumtreiben, dachte ich es wäre eine nette Idee wenn wir in diesem Thread unsere kleinen Tipps und Tricks posten die uns das tägliche Arbeiten erleichtern. Nix weltbewegendes wofür man gleich ein HOWTO schreiben würde, sondern kleine Nettigkeiten eben.

Bash:
Textersetzung:
sed ist nett, aber manchmal einfach Overkill, da die Bash selbst recht brauchbare Textersetzungsfunktionen bietet. Beispiel:

# TEXT="Text ersetzt man mit sed."
# echo $TEXT
Text ersetzt man mit sed.
# echo ${TEXT/sed/der Bash}
Text ersetzt man mit der Bash.

Oder was praxirelevantes aus meiner bashrc:

uploadconfigfile() {
scp $1 user@host:public_html/configs/${1#.}
}

Damit kann ich Dotfiles hochladen, wobei der führende Punkt entfernt wird damit der Webserver sie auch anzeigt.

Auch Substrings kann man recht nett extrahieren:

# TEXT="echtlangerstring"
# echo $TEXT
echtlangerstring
# echo ${TEXT:4:6} // 6 Zeichen ab der 5. Stelle
langer

Letzten Parameter wiederholen
Durch aufeinanderfolgendes Drücken von ESC und . wird der letzte Parameter wiedergeholt. Beispiel:

# ls /langer/nerviger/pfad
# rm -r <ESC und . drücken> // wird zu
# rm -r /langer/nerviger/pfad

Bashcompletion Finetuning
Wer kennt es nicht, man will mit cd in ein Verzeichnis wechseln, was aber länger dauert als es müsste weil die Bash beim Drücken von Tab ständig Dateinamen vorschlägt... Die Lösung:

complete -d cd

In die .bashrc und gut ists... :)

Rechtsschreibprüfung
Verwend ich persönlich nicht wirklich, manche findens aber recht praktisch:

# shopt -s cdspell
# cd
# mkdir foo
# cd ofo
foo
# pwd
/home/user/foo

Wenn man es dauerhaft will, einfach in die .bashrc.

pushd und popd
Kennen wahrscheinlich die Meisten ohnehin, ist aber praktisch. Mit pushd legt man einen Pfad auf den Stack, mit popd holt man ihn wieder. Beispiel:

# cd /ganz/langer/nerviger/pfad
# pushd .
... diverese Arbeiten in anderen Verzeichnissen
# popd
# pw
/ganz/langer/nerviger/pfad

Hat natürlich nur Sinn wenn man weiß dass man in vielen Verzeichnissen arbeiten wird, sonst würde es ein normales "cd -" auch tun.

Das waren mal so die Bash-Sachen die ich mehr oder weniger ständig verwende und nicht mehr missen will, nächstes Mal gibts dann noch ein paar Tipps zu anderen Programmen. :)

gaelic 07.11.2005 15:28

im moment mein liebling, und fuer viele andere sicher auch:

<ctrl>+r reverse search in der bash.

colossus 07.11.2005 22:14

SEHR nice! :) Kannte kaum etwas davon, werde versuchen, mir die offensichtlich am ehesten nuetzlichen Kniffe einzuhaemmern. :D

Ich hab durch die Eintraege
Code:

set editing-mode vi
set keymap vi
set visible-stats on

in meiner ~/.inputrc unter anderem vi-Keybinds auf der Kommandozeile (nach druecken von <ESC>), und darueberhinaus das readline-Aequivalent zu `ls -F` bei der Tab-Completion (Dateitypen werden durch ein bestimmtes Symbol an letzter Stelle angezeigt).

citizen428 13.11.2005 18:07

Hardwareerkennung:
Vor einiger Zeit gab es im Linux Magazin zwei nette Skripte, welche den PCI- respektive USB-Bus durchsuchen und anschliessen die gefundenen Geräte inklusive korrespondierendem Kernelmodul ausgeben. Hat mir sehr geholfen als ich mal einen neuen Kernel auf einem mir mehr oder weniger unbekannten Rechner backen musste.

pcidetect
usbdetect


Alle Zeitangaben in WEZ +2. Es ist jetzt 04:21 Uhr.

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
© 2009 FSL Verlag