[sh] script für anfänger [Gelöst/Geschlossen]

Melden
-
 mafiosie -
Guten Tag,

ich versuche einen script zu machen der eine datei öffnet.
das ist der code : #!/bin/sh
cd /exlibris/primo/p2_1/ng/jaguar/home/profile/log #open se_log
i=grep "total doc number = " agent_9501.log | tail -1 # get one line of the doc number
echo $i
In i sollte ich "2009.11.23 18:21:36 slice id: 1 OUTPUT>total doc number = 821126" haben.
Danach möchte ich eine "variable" mit 821126 drinne kreieren um einen echo von diese datei
zu machen.

5 Antworten

Zeige uns einen teil von der datei "agent_9501.log".
Und deine "variable" musste so aussehen :
i=$(grep "total doc number = " agent_9501.log | tail -1)
Ich habe den fehler gesehen aber echo $i zeigt nichts.
In meine datei habe ich viele linien:
2009.11.23 18:21:35 slice id: 1 OUTPUT>Starting slice
2009.11.23 18:21:36 slice id: 1 OUTPUT>total doc number = 821126
2009.11.23 18:21:36 slice id: 1 OUTPUT>warming engine ...
2009.11.23 18:21:49 slice id: 1 OUTPUT>warmup completed
2009.11.23 18:21:53 slice id: 1 OUTPUT>Building frbrgroup cache. size: 4 MB, time: 3433 ms.
Ich möchte diese nummer zurück haben 821126.
jp@MDK:~/tmpfs ssh$ cat plop
2009.11.23 18:21:35 slice id: 1 OUTPUT>Starting slice
2009.11.23 18:21:36 slice id: 1 OUTPUT>total doc number = 821126
2009.11.23 18:21:36 slice id: 1 OUTPUT>warming engine ...
2009.11.23 18:21:49 slice id: 1 OUTPUT>warmup completed
2009.11.23 18:21:53 slice id: 1 OUTPUT>Building frbrgroup cache. size: 4 MB, time: 3433 ms.

jp@MDK:~/tmpfs ssh$ var=$(sed -n '/total doc number =/{s/.*= //p}' plop)

jp@MDK:~/tmpfs ssh$ echo "$var"
821126

jp@MDK:~/tmpfs ssh$
danke für deine hilfe.
Da ich es mehrmals habe "821126" möchte ich wissen wie ich
es nur ein mal haben kann in meine "variable"??
ups, was zahlst du