Shellscript zum vergleichen und einfügen

Vom einfachen Programm zum fertigen Debian-Paket, Fragen rund um Programmiersprachen, Scripting und Lizenzierung.
Antworten
toberkel
Beiträge: 155
Registriert: 19.05.2003 08:44:53
Wohnort: Lummerland

Shellscript zum vergleichen und einfügen

Beitrag von toberkel » 03.03.2007 23:18:07

Hallo.

Ich stehe leider vor einem kleinen Problem. Ich würde gerne ein Script basteln um bestimmte Strings aus einer Datei auszulesen und in eine andere zu schreiben. Das an sich stellt kein Problem dar. Der String aus Datei1 soll allerdings nur in Datei2 geschrieben werden wenn der String noch nicht in Datei2 existiert. Falls doch, soll er nicht geschrieben werden und zum nächsten übergegangen werde. Leider habe ich keine Idee wie dies zu realisieren werde. Ich wäre für einen kleinen Denkanstoss sehr dankbar.

MfG,

toberkel
--
Rechtschreibfehler dienen der allgemeinen Belustigung,
und sind daher beabsichtigt.

Benutzeravatar
Savar
Beiträge: 7174
Registriert: 30.07.2004 09:28:58
Lizenz eigener Beiträge: MIT Lizenz
Wohnort: Berlin

Beitrag von Savar » 03.03.2007 23:32:45

naja es kommt drauf an.. nehmen wir an du hast in der Variablen $STRING1 den String den du, falls noch nicht vorhanden, in die Datei2 einfügen willst:

Code: Alles auswählen

if ! grep -q "$STRING1" /pfad/zur/datei2
then
   echo "$STRING1" >> /pfad/zur/datei2
fi
MODVOICE/MYVOICE
Debianforum Verhaltensregeln
Log Dateien? -> NoPaste

toberkel
Beiträge: 155
Registriert: 19.05.2003 08:44:53
Wohnort: Lummerland

Beitrag von toberkel » 03.03.2007 23:53:10

Hmm. Das scheint leider nicht richtig zu funktionieren. Es geht darum eine Art

Code: Alles auswählen

cat /var/log/auth.log | grep tnbackup
zu machen. Dies würde sowas hier zu Tage fördern:

Code: Alles auswählen

Mar  3 22:30:41 fuckup sshd[15798]: Accepted publickey for tnbackup from xxx.xxx.xxx.xxx port 39826 ssh2
Wenn dieser String noch nicht in der Datei Datei2 steht, soll er reingeschrieben werden, wenn doch, nicht. Das ist deswegen wichtig da das Script öfter laufen würde und somit wahrscheinlich sonst Einträge öfter in Datei2 schreiben würde...

MfG,

toberkel
--
Rechtschreibfehler dienen der allgemeinen Belustigung,
und sind daher beabsichtigt.

Benutzeravatar
GoKi
Beiträge: 2068
Registriert: 04.07.2003 23:08:56
Lizenz eigener Beiträge: MIT Lizenz

Beitrag von GoKi » 04.03.2007 00:03:42

Als Denkanstoß, schau dir doch mal sort und uniq an.
MfG GoKi
:wq

Antworten