ubuntuusers.de

Programmierung eines shell scripts

Status: Ungelöst | Ubuntu-Version: Ubuntu 16.04 (Xenial Xerus)
Antworten |

temptemp

Anmeldungsdatum:
11. August 2013

Beiträge: 69

Hallo zusammen,

wenn man einen tvheadend server betreibt und einen Sendung aufnehmen möchte befindet sich im Ordner /home/hts/.hts/tvheadend/dvr/ lauter Dateien mit einem kryptischen Name, in welcher alle Details Start ende etc. gespeichert sind.

Hier der Aufbau einer solchen Datei:

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64

GNU nano 2.5.3     Datei: 1f1acdc2a1715620acedda2a2f3e79eb                

{

        "start": 1483654500,

        "start_extra": 0,

        "stop": 1483656300,

        "stop_extra": 0,

        "channel": "529c6520913b54366ae7adfeedc90ec9",                              

       "channelname": "Das Erste",

        "title": {

                "ger": "Tagesthemen"

        },

        "subtitle": {

                "ger": "mit ARD-DeutschlandTrend und Wetter"

        },

        "description": {

                "ger": "Themen u.a.:* Ohnmacht der Behörden: Offenbar keine $        },

        "pri": 2,

        "retention": 0,

        "container": -1,

        "config_name": "747bc25d6ff0a3c5f9f62bad11d871ac",

        "owner": "admin",

        "creator": "admin",                                                          "errorcode": 0,

        "errors": 0,

        "data_errors": 0,

        "dvb_eid": 57606,

        "noresched": false,

        "autorec": "",

        "timerec": "",

        "content_type": 2,

        "broadcast": 138569

}

 

Schritt 1:

Nun möchte ich ein bash script welches alle Dateien nacheinander durchgeht und den nächsten (zeitlich gesehen frühestens von der Ausführung des scripts) Startzeitpunkt ausliest „start“ und mir ausgibt.

Schritt2:

Ich möchte das es bei jedem shutdown ausgeführt wird und eine Datei im /etc/ verzeichniss anlegt mit dem nächsten (zeitlich gesehen frühestens von der Ausführung des scripts) Startzeitpunkt siehe „start“

track

Avatar von track

Anmeldungsdatum:
26. Juni 2008

Beiträge: 7174

Wohnort: Wolfen (S-A)

Schön, Deine Wünsche.

Was Du dafür brauchst, ist zuerst das Skripting-Wiki, dann eventuell man date (date -d @1483654500 oder so um die "seconds of the Epoch" umzuwandeln) und schließlich ein Konzept, wie Du das Skript zum Shutdown aufrufen willst.

Aber das hängt sehr von Deinem System ab - musst Du also mal sehen.

LG,

track

frostschutz

Avatar von frostschutz

Anmeldungsdatum:
18. November 2010

Beiträge: 7790

Sieht nach json aus. jq ist ein json parser:

# apt-get install jq
$ jq -r '.start' < 1f1acdc2a1715620acedda2a2f3e79eb
1483654500

Damit bekommst du ohne Verrenkungen die Werte heraus, wie du das dann weiter verarbeiten willst...

Copy&Paste aus nano heraus geht ein wenig schief, cat reicht.

user_unknown

Avatar von user_unknown

Anmeldungsdatum:
10. August 2005

Beiträge: 17620

Wohnort: Berlin

track schrieb:

Was Du dafür brauchst, ist zuerst das Skripting-Wiki, dann eventuell man date (date -d @1483654500 oder so um die "seconds of the Epoch" umzuwandeln) und schließlich ein Konzept, wie Du das Skript zum Shutdown aufrufen willst.

Es ist doch leichter den aktuellen Zeitpunkt im gleichen Format zu bestimmen, zu sortieren und zu vergleichen als mit Jahr, Monat, .... Sekunde zu hantieren.

Antworten |