NEWS
Source Code von Script aus backup.json extrahieren
-
Manchmal möchte man nur ein bestimmtes Script aus einem Backup wiederherstellen. Dazu habe ich ein kleines Hilfsscript geschrieben, das den Vorgang etwas erleichtert.
/* Script zum Extrahieren von Scripts aus dem backup.json file 1. Verzeichnis /opt/iobroker/restore/ erstellen 2. backup.json file aus Backup extrahieren und in obiges Verzeichnis kopieren 3. Im Script unten den gewünschten Namen des Scripts eintragen 3. Script starten 4. das extrahierte Script wird mit dem Namen "the_script.js" erzeugt */ // Hier das Verzeichnis und den Namen des Scripts eintragen. // Im Beispiel das Script 'Jalousien', das unter 'common' abgelegt wurde const name_of_script = "common.Jalousien"; var fs = require('fs'); var filename = '/opt/iobroker/restore/backup.json'; fs.readFile(filename, 'utf8', function(err, data) { if (!err) { var objects = JSON.parse(data).objects; var index = objects.findIndex(x => x.id ==="script.js." + name_of_script); var source = objects[index]; var script_text = unescape(source.value.common.source); fs.writeFile("/opt/iobroker/restore/the_script.js", script_text, function(err) { if(err) { return console.log(err); } log("Script was extracted"); }); } else log("backup.json konnte nicht gelesen werden"); });