bitte um hilfe bei einem shellskript
Geizhals » Forum » Linux-Support » bitte um hilfe bei einem shellskript (12 Beiträge, 204 Mal gelesen) Top-100 | Fresh-100
Du bist nicht angemeldet. [ Login/Registrieren ]
bitte um hilfe bei einem shellskript
03.03.2008, 22:41:45
liebe linux-gurus ...

ich möchte eine tabellarische darstellung in einem file aus einem shellscript erstellen:

file:

Timestamp                CPU MHZ   --  Volt  --  Volt   -- Umin CPU   Geh.  -- Temp CPU    Mainb
2008.02.27-00:01:23      1000.000  --  1.10  --  1.100  --  2566  --  1046  --  +41°C  --  +26°C
2008.02.27-00:01:30      1000.000  --  1.10  --  1.100  --  2566  --  1044  --  +41°C  --  +26°C
2008.02.27-00:01:34      1000.000  --  1.10  --  1.100  --  2566  --  1044  --  +41°C  --  +26°C
2008.02.27-00:16:01      1000.000  --  1.10  --  1.100  --  2556  --  1056  --  +41°C  --  +26°C
2008.02.27-00:17:01      1000.000  --  1.10  --  1.100  --  2576  --  1044  --  +41°C  --  +26°C
2008.02.27-00:18:01      1000.000  --  1.10  --  1.100  --  2556  --  1051  --  +41°C  --  +26°C
2008.02.27-00:19:01      1000.000  --  1.10  --  1.100  --  2566  --  1101  --  +42°C  --  +26°C
2008.02.27-00:20:01      1000.000  --  1.10  --  1.100  --  2576  --  1102  --  +42°C  --  +26°C
2008.02.27-00:21:01      1000.000  --  1.10  --  1.100  --  2566  --  1099  --  +42°C  --  +26°C
...
2008.02.27-01:10:01      1900.000  --  1.31  --  1.300  --  2576  --  1044  --  +41°C  --  +29°C
2008.02.27-01:11:01      1900.000  --  1.31  --  1.300  --  2566  --  1044  --  +41°C  --  +29°C
2008.02.27-01:19:01      1908.668  --  1.31  --  1.300  --  842  --  829  --  +37°C  --  +34°C
2008.02.27-01:20:01      1908.668  --  1.31  --  1.300  --  842  --  829  --  +37°C  --  +34°C
2008.02.27-01:21:01      1908.668  --  1.31  --  1.300  --  843  --  889  --  +38°C  --  +35°C
2008.02.27-01:22:01      1908.668  --  1.31  --  1.300  --  912  --  938  --  +39°C  --  +35°C
2008.02.27-01:23:01      1908.668  --  1.31  --  1.300  --  913  --  936  --  +39°C  --  +35°C
2008.02.27-01:24:01      1908.668  --  1.31  --  1.300  --  850  --  983  --  +40°C  --  +36°C
2008.02.27-01:25:01      1908.668  --  1.31  --  1.300  --  913  --  983  --  +40°C  --  +36°C
2008.02.27-01:26:01      1908.668  --  1.31  --  1.300  --  895  --  986  --  +40°C  --  +36°C
2008.02.27-01:27:01      1908.668  --  1.31  --  1.300  --  985  --  1035  --  +41°C  --  +36°C
2008.02.27-01:35:01      1000.000  --  1.10  --  1.100  --  694  --  1043  --  +41°C  --  +34°C
2008.02.27-01:36:01      1000.000  --  1.10  --  1.100  --  602  --  1040  --  +41°C  --  +34°C
2008.02.27-01:37:01      1000.000  --  1.10  --  1.100  --  693  --  1041  --  +41°C  --  +34°C
2008.02.27-01:38:02      1000.000  --  1.10  --  1.100  --  0  --  1044  --  +41°C  --  +34°C
2008.02.27-01:39:01      1000.000  --  1.10  --  1.100  --  181  --  1094  --  +42°C  --  +34°C



die ausgabe aus dem script ist relativ einfallslos (mangels programmierkenntnis)

echo $timestamp "    " $out1 " -- " $out2 " -- " $out3 " -- " $out4 " -- " $out5 " -- " $out6 " -- " $out7 >> /home/vdr_log/temp_log

wie kann ich eine nicht "springende" tabelle erstellen?
gibt es einen shell befehl, der tabellen erstellt?


also so:

2008.02.27-01:11:01      1900.000  --  1.31  --  1.300  --  2566  --  1044  --  +41°C  --  +29°C
2008.02.27-01:19:01      1908.668  --  1.31  --  1.300  --    842  --    829  --  +37°C  --  +34°C
2008.02.27-01:20:01      1908.668  --  1.31  --  1.300  --    842  --    829  --  +37°C  --  +34°C
2008.02.27-01:37:01      1000.000  --  1.10  --  1.100  --    693  --  1041  --  +41°C  --  +34°C
2008.02.27-01:38:02      1000.000  --  1.10  --  1.100  --        0  --  1044  --  +41°C  --  +34°C



thanx

Antworten PM Übersicht Chronologisch
 
Melden nicht möglich
...
Re(3): bitte um hilfe bei einem shellskript
04.03.2008, 03:43:41
bei einem weiteren skript enden ebenfalls meine kenntnisse

input $1    start oder stop
      $2    filename  

filenames können z.b. sein:

/var/lib/video.00/Die_Gustloff_-_Die_Dokumentation_(2#2F2)/2008-03-03.21.40.99.99.rec
/var/lib/video.00/Planet_Erde_Die_Alpen_-_Südtirol/2008-03-04.00.02.99.99.rec
/var/lib/video.00/@Kulturmontag/2008-03-03.23.05.99.99.rec                            

daraus möchte ich

Die_Gustloff_-_Die_Dokumentation_(2#2F2)
Planet_Erde_Die_Alpen_-_Südtirol
@Kulturmontag

generieren (extrahieren):

meine "holzhammer" methode

timestamp=$(date +%Y.%m.%d-%H:%M:%S)
#
# handling filename
# /var/lib/video.00/  hat die länge 18
#
inputfile=$2

echo $inputfile $timestamp

# inputfile=$(echo '$inputfile' | tr -d [:special:])
echo $inputfile $timestamp

laenge=${#inputfile}
let offset=laenge-19
echo $offset $inputfile
teil=$(echo `expr substr $inputfile 19 $laenge`)
echo $teil
#
#  rest wegfiltern
#
laenge=${#teil}
dat_beginn=$(echo `expr index "$teil" /`)
let dat_beginn=dat_beginn-1
echo $dat_beginn
sendung=$(echo `expr substr $teil 1 $dat_beginn`)

echo "heureka  " $sendung


das funktioniert auch meistens,

bei
/var/lib/video.00/Die_Gustloff_-_Die_Dokumentation_(2#2F2)/2008-03-03.21.40.99.99.rec

streut es das script auf:
bash: syntax error near unexpected token `('


mein auskommentierter "tr" versuch zieht auch nicht,


ideen ?


lg digijazz

ps: daß ein erfahrener linux shell programmierer da deutlich weniger zeilen bzw. variablen braucht, ist mir auch klar,
aber learning bei doing   ...  dann sieht's so aus   ;)

Antworten PM Übersicht Chronologisch Zum Vorgänger
 
Melden nicht möglich
 

Dieses Forum ist eine frei zugängliche Diskussionsplattform.
Der Betreiber übernimmt keine Verantwortung für den Inhalt der Beiträge und behält sich das Recht vor, Beiträge mit rechtswidrigem oder anstößigem Inhalt zu löschen.
Datenschutzerklärung