Einträge zu Tag: Bash

Zeilen mir mehr als ... Zeichen finden

Erstellt: 19.04.2011 13:29

Zwischendurch kann es nötig sein in einem File überlange Zeilen zu finden.

Nach längerem Basteln mit "read" und "wc" blieb es dann doch bei "grep":

$ grep -vnE  '^.{0,80}$' file

In diesem Beispiel werden alle Zeilen ausgegeben mit mehr als 80 Zeichen.



Tagged: Bash Linux

Kommentar verfassen | Nach oben

Bearbeitungsdatum einer Datei manipulieren

Erstellt: 18.04.2011 08:25

Manchmal kann es nötig sein, zum Beispiel für irgendwelche Tests, dass man das Bearbeitungsdatum einer Datei manipuliert.
Hier eine ganz normale Datei, montags Morgen erstellt:

$ ls -lh zeitreise
-rw-r--r-- 1 usr grp 1.1M 2011-04-18 08:06 zeitreise

Und nun schicken wir sie auf die Zeitreise mit Hilfe von "touch":

$ touch -t 190212242355 zeitreise

Et voilà, die Datei befindet sich auf einmal im Jahre 1902, kurz vor der Geisterstunde an Heilighabend:

$ ls -lh zeitreise
-rw-r--r-- 1 usr grp 1.1M 1902-12-24 23:55 zeitreise

...wenn das mal kein Historisches Dokument ist.

Das Format:

$ touch -t [CC]YYMMDDhhmm[.ss] file

CC - Das Jahrhundert, kann weggelassen werden
YY - Das Jahrzehnt, zweistellig
MM - Der Monat, zweistellig
DD - Der Tag, zweistellig
hh - Die Stunde, zweistellig
mm - Die Minute, zweistellig
.ss - Die Sekunden, zweistellig, mit einem Punkt getrennt, kann weggelassen werden.



Tagged: Bash Linux

Kommentar verfassen | Nach oben

-bash: /dev/null: Permission denied beim SSH-Login

Erstellt: 14.04.2011 15:48

Die Fehlermeldung "-bash: /dev/null: Permission denied" beim Login per SSH oder ähnliche Meldungen können entstehen, wenn die Dateirechte von /dev/null nichtmehr korrekt sind.

Kontrolliert man /dev/null zeigt sich folgendes Bild:

# ls -lh /dev/null
crw------- 1 root adm 1, 3 Mär 30 16:48 /dev/null

Korrekt wäre:

# ls -lh /dev/null
crw-rw-rw- 1 root root 1, 3 Mär 30 16:48 /dev/null

Wie kann das passieren?

Die sind die Standardrechte wie sie syslog-ng anlegt für Logfiles. syslog-ng gibt allen Logfiles die voreingestellten Rechte, so auch dem Verzeichnis /dev/null, wenn man direkt darauf verweist. 

destination d_drop { file("/dev/null"); };

Dies umgeht man, indem man Nachrichten welche man verwerfen will ohne definierte Destination angibt:

destination d_drop { };

/dev/null repariert man am einfachsten wieder indem man es löscht und korrekt wieder anlegt:

# rm /dev/null
# mknod -m 0666 /dev/null c 1 3

Und schon ist wie Welt wieder in Ordnung:

# ls -lh /dev/null
crw-rw-rw- 1 root root 1, 3 Mär 30 16:52 /dev/null



Tagged: Bash Linux ssh syslog-ng

Kommentar verfassen | Nach oben

Datei Zeilenweise auslesen in Bash

Erstellt: 14.04.2011 15:17

Ein simpler Einzeiler mit "while" um eine Datei in Bash Zeilenweise auszulesen:

$ while read line; do Befehl $line; done < file.txt

Jede Zeile aus dem Textfile wird nacheinander in die Variable "line" eingelesen und kann benutzt werden.



Tagged: Bash Linux

Kommentar verfassen | Nach oben

Email mit Anhang aus der Konsole versenden

Erstellt: 16.02.2011 08:56

Es kann vorkommen, dass man aus der Konsole heraus gerne eine Email mit Anhang versenden würde.
Handelt es sich um eine Textdatei, kann man diese noch einfach in das Email anfügen.

$ mail empfaenger@domain.tld -s "Betreff" < /pfad/textdatei.txt

Will man allerdings eine Datei, welche nicht Textbasiert ist, sondern ein PDF oder ähnliches aus der Konsole heraus versenden, reichen diese Mittel nichtmehr.

In diesem Fall erweist sich "biabam" als sehr einfach und nützlich.

Installieren und fertig:

# apt-get install biabam

Absenden:

$ echo "Mail mit Anhang" | biabam /pfad/tolles.pdf  -s "Betreff" empfaenger@domain.tld

...und weg ist es!



Tagged: Bash Debian Internet Linux Mail

Kommentar verfassen | Nach oben

« ältere Einträge

neuere Einträge »