Französische Accents bei
nodeadkeys:
Unter Gnome erstmal die Compose-Taste festlegen
(Default: Altgr-shift), bei mir: caps-lock:
System-Einstellungen-Tastatur-Belegungen-Dort: Belegungseinstellungen
für Compose auswählen, Häkchen setzen.
Nacheinander Caps-Lock, die
Accent-Taste und schliesslich e ergeben dann das gewünschte Zeichen.
das paket denyhost schreibt vergebliche ssh-Woerterbuchangriffe in die Datei hosts.deny. Konfiguration /etc/denyhost.conf, dort kann man alles etwas haerter einstellen.
Befehl um die execution time eines Programms zu messen:
time
PDFs zuschneiden.
pdfcrop
Refcards-Sammlung - Habe dort bisher
erst eine geholt, aber anstatt in /usr/share rumzusuchen ist die Seite
sicher gut.
Canon Pixma 4700 unter 64bit Debian
gphotofs /mnt fusermount -u /mnt #umount
Jetzt noch den Emacs-Modus aktivieren, mal sehen welche Shortcuts mir dann kaputt gehen.
gconftool-2 --set /desktop/gnome/interface/gtk_key_theme Emacs --type string
mount -t vboxsf sharefolder_im_host hierhin_bitte_einhaengen sudo sh VboxUSW.run
DEVILSPIE
devilspie - Fenster in speziellem workspace starten (howto)
devilspie (background-info)
Anmerkung: matches als Schlüsselwort für Teilausdrücke verwenden.
Debianforum.de - Fragen rund um Debian (dt.)
Debian-FAQ
Debian Packete aktuell bei debian.org
Securing Debian Howto
Weitere, (neuere) Debianpackete bei apt-get.org
Debianplanet (Neuigkeiten)
Backports.org Fileliste
Emacs-Home
Linuxfibel - Buch zum reinschauen (dt.)
HOW-TO Liste für Linux
Samba Anleitung
Plugins für Mozilla
Rpmfind.net
Webseitenüberprüfer
SelfHTML
allerlei Foren
linuxforen
Ispell benutzen (geht aber auch im emacs):
ispell -C -P -S -T latin1 -d ngerman -t Dateiname.tex
Bilder:
Hier mal
einige Ideen, wie ich geschickt mit den gescannten pdfs vom xerox
umgehe:
1) Im acroread öffnen.
2) In ein ps-file speichern
3) das ps-file wieder mit ps2pdf in ein pdf verwandeln. Dieses ist
nun LaTeX-konform.
4) Warum das alles?: Jedes Dokument soll sowohl mit pdflatex als auch
mit latex kompillierbar sein.- Diese
Mehrseitige Pdfs in Latex File einbauen. Das geht allerdings nur mit pdflatex.
\usepackage{pdfpages} \includepdf[pages={1-4},pagecommand={\meinheadingcommand,scale=0.75]{Meinpdf_ohne_Endung}
Mit dem Programm
"texhash" werden Latex neue Klassen und Styles übermittelt. (Nicht cls-Files müssen erst mit zB.: latex memoir.ins zu einem memoir.cls gemacht werden.
Mehrere Bilder nebeneinander in Latex.
\begin{figure}[] \centering \begin{minipage}[t]{6cm} \includegraphics*[width=6cm]{links(.eps.pdf..)} \caption{links} \label{fig:links} \end{minipage} \hfill %% Alternativ: \hspace{2cm} \begin{minipage}[t]{6cm} \includegraphics*[width=6cm]{rechts(.eps.pdf...)} \caption{rechts} \label{fig:rechts} \end{minipage} \end{figure}
Bilder aus MS-Programmen extrahieren (Quelle: Ein Buch.- Warum nicht direkt ein PDF erzeugen weiss ich nicht mehr):
1)Aus Word-Datei mit
PS-Drucker .prn-Datei erzeugen
2)Adobe Distiller erzeugt .pdf
Um es schnell wieser zu finden: Das entspricht-gleich
Zeichen hat Unicode 2259, und es ist unter Lucida-sans-unicode (so
ähnlich geschrieben) vorhanden.
Befehlsübersicht
Alt-Click: Verdeckte Objekte ^Shift-F: Füllung bzw. Rahmen bearbeiten Pos1, End, Bild rauf/runter: Ebene des Objektes im Bild anpassen.
Unicode- Zeichen einbauen mit ^U 4 Hexadezimalzahlen Enter Esc. Folgende Tabelle ist hierbei hilfreich:
Unicode-Zeichen
Alle inkscape Dateien in eps und png konvertieren.
#!/bin/bash for i in `ls *.svg` do inkscape -z -T -d 600 -f $i -E ${i%%svg}eps -e ${i%%svg}png done # Hier ist der Befehl in Langform aufgeschrieben: # inkscape --without-gui --export-text-to-path --export-dpi=600 # --file=Mein.svg --export-eps=Mein.eps --export-png=Mein.png
Sarge mit grub:
mount /mnt/hda1 ## ehemalige partition "/" eben grub-installer --root-directory=/mnt/hda1 --recheck hd0 ## "hd0" steht für die erste Platte..
Woody mit lilo:
Erstmal: Falls die Platte platt:
mount /mnt/hda1 #bei mir ist es die erste Partition
MAKEDEV genericim anzulegenden directory
mkdir /mnt/hda1/dev #falls devices kaputt
Ein timeserver: ntpdate pool.ntp.org
Dieses sticky-bit ist hier zu finden
.htaccess
Sinnvolle Seite dazu (gefunden April 08)
Um eine Paketliste zu erhalten und um sie danach zu installieren:
dpkg --get-selections | awk '{print $1}' > liste aptitude install `cat liste`
! an die Keycodes kommt man mit dem Kommando showkey ! Caps_Lock soll nicht mehr sperren ! ist schon ins X einkonfiguriert remove lock = Caps_Lock ! Caps_lock als backslash: (evtl. andere Tastaturen: keycode 65) keycode 66 = backslash ! linke Windowstaste = {, plus [Umschalt] = [ keycode 115 = braceleft bracketleft ! rechte Windowstaste = }, plus [Umschalt] = ] ! neue Tastatur hat keine mehr: !keycode 116 = braceright bracketright ! die "komische" Taste keycode 117 = braceright bracketright keycode 118 = bracketright keycode 119 = braceright ! wegen der f-tasten keycode 74 = F8 keycode 76 = F10 keycode 67 = F1
Einstellen der Wachbleibe-Zeit für eine Festplatte hier: 120*5 Sekunden
hdparm -S120 /dev/hda
Startmenü umbauen:
c:\Dokumente und Einstellungen\All Users\StartmenProgramme
Alt-Druck: fügt aktuelles Fenster in die Zwischenablage
find . -type f -name '*.html' -print0 | xargs -r0 perl -p -i.bak -e "s/string1/string2/g;"
{}[]()^$.|*+?\ @ <>~`"*!
Konvertieren alter ISO-8859-15 Dateinamen nach UTF-8. Ohne die Option --notest wird nur gezeigt was getan wird.
convmv -r --notest -f ISO-8859-15 -t UTF-8 *
Ein kleines Start-Shellskript:
#!/bin/bash VARIABLE=$1 if [ "$1" = "" ] # Beachte: genau aufpassen mit den Leerzeichen then # sonst will er Operatoren haben VARIABLE="meine" fi case $VARIABLE in meine) rm ~/meinedatei ;; *) echo "Falsches Argument" exit 1 esac exit 0
Kommandos für die
Shell:
jobs, fg, bg um Befehle aus dem Hntergrund wieder nach
vorne zu verschieben.
Anwendung: Mit Str-Z: Prozess anhalten. Dann mit bg in den
Hintergrund verschieben. Grund: z.B. das Kaufmanns-Und vergessen.
Um mit fg Jobs wieder in den Vordergrund zu holen kann man
mit fg %jobname oder mit %JobID machen (%+
holt den aktuellsten Job zurück). jobs -l listed die
laufenden Jobs auf (bei -p nur die JobIDs).
kill %2 würde den zweiten Hintergrundjob abschiessen,
evtl. muss man den kill-Befehl mit entweder -QUIT oder sogar
-KILL verstärken .
Weitere Tools:
cat: Kopiere Input nach Output cut: Extrahiert Spalten aus dem Input grep: Stringsuche sed: Komandozeilen-Editor sort: Sortiert Input tr: Wandelt Symbole im Input um
Mit
"mail" per Kommandozeile eine Nachricht verschicken:
echo "Mein Text" | mail -s "Betrifft meinen Text..." meine@dresse.de date | mail -s "Betrifft Datum ..." meine@dresse.de
pdfs mergen (zusammenfügen):
pdftk file1.pdf file2.pdf output filegesamt.pdf
pdfs drehen und weiterer Spaß:
pdftk file1.pdf cat 1-endS output fileneu.pdf #pdf komplett auf den Kopf drehen.
pdftk file1.pdf cat 1E 2-end output fileneu.pdf #erste Seite 90 grad nach rechts drehen; Rest lassen.
pdftk file1.pdf background wasserzeichen.pdf output mit_wasserzeichen.pdf
pdftk wrong_page_order.pdf cat 12-1 output reversed_order.pdf
fig2dev -L pdf -p 0 PDFfigure.fig > figure.pdf ##Eine Datei
If you are using bash shell, and you've already used the above short script to create files with names PDF*.fig, you can convert them all at once by the following:
for filename in `ls PDF*.fig` do filenameB="`echo $filename | sed "s/PDF//g" | sed "s/.fig/.pdf/g"`" fig2dev -L pdf -p 0 $filename > $filenameB done
Oder einfach nur mit dem Programm convert (was ein Teil von ImageMagick ist):
convert bild.endung bild.neueendung
Bildumwandlung: Alle Dateien.bmp->.jpg (60%)->.eps:
#!/bin/bash # Konvertiert alle bmp-Dateien in jpg-Dateien mit 60%iger Qualität und # dann sofort in eine eps-Datei. for i in `ls *.bmp` do convert -quality 60 $i ${i%%bmp}jpg sam2p ${i%%bmp}jpg ${i%%bmp}eps done # %% nimmt den längsten passenden String vom Ende her und löscht diesen. # ## macht das vom Anfang des Stringnamens her kommend. # % bzw. # nimmt den kürzesten passenden Ausdruck Doppel-Prozent den # Längsten?? # ${variable//pattern/string} ersetzt das Muster durch string.- Mit # # oder % kommt die Forderung, dass das Mustern am Anfang bzw. am Ende # stehen muss.
Wildcards:
[a-c]* a*,b*,c* [!0-2]* nicht 0*,1*,2* \!* !* # Es geht auch am Ende ohne Backslash -* -* # Ans Ende schreiben
I/O Direction
command < filename # Statt STDIN wird file als Input verwendet. command > outfile # Ausgabe in Datei. command < infile > outfile # Ist erlaubt cut -d: -f1 < /etc/passwd |more # more gibt alle Nutzer des Systems aus # d: <-> Spalten sind durch ":" getrennt # f1 <-> Erstes Feld # d waere bei Trennung durch Space <> file # File als STDIN und STDOUT
Die wichtigsten
Kommandozeilen-Sonderzeichen:
` Alte Kommando-Subtitution Starkes Zitat (Fast alle Sonderzeichen innerhalb erlaubt, auch \) meins -- mein\s -- String "mein", geschützte quote, String "s" " Schwaches Zitat ; Kommando-Separator {} Anfang und Ende eines Kommando-Abschnitts \ Um das Kommando in der nächsten Bildschirmzeile weiterzuschreiben oder in starken Anführungszeichen
Ctrl-Kombinationen
^c Stoppe Kommando ^d Exit Shell (kein Input mehr) ^s "Sleep"-Kommando (unnötig) ^q Mache ^s rückgängig ^u Lösche gesamte Kommandozeile ^z Suspend (bg&) ^\ Steigerung von ^c
Moving/deleting in the bash (Im emacs-Mode (default))
Esc-b ein Wort vorwärts Esc-f ein Wort rückwärts
Esc-d ein Wort vorwärts löschen ^y einfügen (yank) ^a,^k,^e alle wie im Emacs (Obere auch, selten benutzt) HISTORY: ^r Suche des letzten Begriffs ^p ^n previous oder next line im History-File Esc-Tab Tab-Completion aus der history. Weitere: ^L Kommando wie clear ^T Buchstabendreher ^u Löscht zum Zeilenanfang hin ^m ^j wie RETURN Esc-c/u/l verschiedene Groß/-kleinschreibungsmodi für Wörter Esc-. -_ Fügt letztes Wort des vorhergehenden Kommandos ein !! Führt vorhergehendes Komando aus !str Wiederholt das letzte Kommando str !?str? Wiederholt das letzte Kommando welches str enthält ^str1^str2 ersetzt str1 durch str2 und führt dann letztes Kommando aus !-n Wiederholt Kommando, was n Zeilen zurück liegt (!n absolute Zeilen) !!:ZAHL (ZAHL-1)tes Wort des letzten Befehls !!:^ erstes Wort des letzten Befehls !!:$ letztes Wort des letzten Befehls
Funktionen definieren- Eintragen z.B. in .bash_profile
Aktive Funktionen/deren Namen sieht man mit declare -f bzw. -F.
Funktionen sind keine Skripte. Sie sind in der Mitte der
Abarbeitungsreihenfolge von Shell-Befehlen. (Aliases, keywords,
functions, Built-ins (zB. cd), Scripts & Programme aus dem PATH -
Diese Reihenfolge ist natürlich auch änderbar.)
Funktionen sind
schneller als Skripte!
function funtionname # oder functionname () ## gleichberechtigte Schreibweise { commands }
local variablenName
HISTSIZE (default 500- Anzahl der Kommandos in der History)
If-Bedinung
if Bedingung then Statements [elif Bedinung then Statements ] [else then Statements ] fi
Operatoren für Strings
Operator: Wahr, wenn: str1 = str2 beide gleich str1 != str2 beider verschieden str1 <> str2 str1 weniger/mehr als str2 -n str1 str1 länger als null -z str1 str1 hat Länge null
Operatoren für Files
Operator: Wahr, wenn: -d file File existiert und ist Directory -e file File existiert -f file File existiert und ist normale Datei -r/-w/-x file Man hat Lese-/Schreib-/bzw. Ausführberechtigung für das File -s file File existiert und ist nicht leer -O/-G file File gehört dem user bzw. zu einer Gruppe des users file1 -nt/-ot file2 File1 ist neuer bzw. älter als File2
Vergleichsoperatoren für Integers:
-lt less than -le less than or equal -eq equal -ge greater than or equal -gt greater than -ne not equal
For-Schleife
for i := 1 to 10 do begin Statements end
for name [in Liste/ default "$@"] do Statements done
Case-Anweisung
case Ausdruck in Muster1 ) statements;; Muster2 ) statements;; esac
Select (nur in Bash/Korn-Shell)
Wiederholt sich unendlich oft. (bis break)
select name [in Liste] do Statements die $name benutzen break done
While/Until
while Ausdruck do Statements done #Until ist quasi ein while-Ausdruck, macht im folgenden Fall Sinn: until Kommando do Statements done
Kommandozeilenargumente:
shift verschiebt die Variablen aus dem Input. Hier am Beispiel, falls
ich dem Skript evtl. Optionen übergeben will und dann die restlichen
Input-Variablen shiften will.
while [ -n "$(echo $1 | grep -)" ]; do case $1 in -a ) process option -a;; -b ) process option - $2 ist ein optionsargument shift;; * ) echo Usage myprog [-a] [-b argb] esac shift done Weiterverarbeitung..
# Optionen declare: # -i Variablen als integer, -r read-only... # Beispiel i = 3 i2 = 4 r1 = i*i2 # Liefert: i*i2 #mit declare -i i=3 i2=4 declare -i r2 r2 = i * i2 #ergibt 12
Arrays:
name[0]=irgendwas,name[1]=zweites..
Dies entspricht name=(irgendwas zweites)
Wenn ich name=(ein [2]=zwei drei) schreibe, dann ist Element [1] noch leer.
for i in "${name[@]}"; do echo $i done # Wenn statt @ der * verwendet wird, so wird eine lange Liste # mit Standard-Trennzeichen, statt Einzelwörtern erzeugt.
Verwendung von echo:
mit Option -e versteht echo nun C-Backslash-Anweisungen. (-E stellt
diese aus).
-n vermeidet das letzte newline (default)
\a Piep
\b Backspace
\c vermeidet wie -n das letzte newline
\n NEWLINE
\r RETURN
\t TAB
\v Vertikaler TAB
\\ einfaches Backslash
\f FORMFEED (neue Zeile + eingerückt)
Read:
read c1 c2
mein1 mein2
liest variablen ein!
# Reading input: echo -n Wert ? read WERT echo "WERT ist $WERT"
for i in `ls`; do mv $i my$i; done;
. Jedes Zeichen * keins oder mehr Teile des vorstehenden Zeichens + s.o. aber mindestens eines. ? 0 oder 1 Zeichen [A-D] klar \( \) Eine Gruppe \1 erste Gruppe \| Entweder Ausdruck vor | oder danach ^ Am Ausdruckanfang: Linienanfang [^A] nicht-A $ Ende der Zeile \n LINEFEED \t TAB \< \> Wortanfang/Ende Folgende nicht mit \\ schützen: b B s S w W ` ´ '
query-replace-regexp und replace-regexp heissen die Kommandos
Aus irgendeinem Online-Manual:
The things you can type when you are shown an occurrence of string or
a match for regexp are:
C-h to display a message summarizing these options,
then give another answer.
Space to replace the occurrence with newstring. This preserves case,
just like replace-string, provided case-replace is non-nil, as it
normally is.
DEL to skip to the next occurrence without replacing this one. (n geht auch)
, (Comma) to replace this occurrence and display the result. You are
then asked for another input character, except that since the
replacement has already been made, DEL and SPC are equivalent. You
could type C-r at this point (see below) to alter the replaced
text. You could also type C-x u to undo the replacement; this exits
the query-replace, so if you want to do further replacement you must
use C-x ESC to restart (see section Repeating Minibuffer
Commands).
! to replace all remaining occurrences without asking again.
C-r to enter a recursive editing level, in case the occurrence needs
to be edited rather than just replaced with newstring. When you are
done, exit the recursive editing level with C-M-c and the next
occurrence will be displayed. See section Recursive Editing Levels.