L'app JW Library vous permet d'exporter vos précieuses notes. Pour les geeks et les hackers qui souhaitent modifier ces notes de manière automatique (avec Python par exemple, ou directement avec un éditeur SQLite), il peut être fastidieux de :
- dézipper le fichier de sauvegarde
- recompresser le contenu dans le fichier de sauvegarde
Ces petits scripts ne sont pas compliqués, mais vous permettent de le faire rapidement.
Vous les trouverez à l'adresse suivante :
https://github.com/Bibelo/JWInflator
jwlibrary_unzip
pour extraire le contenu du fichier de sauvegarde:
$ ./jwlibrary_unzip -h
Usage: ./jwlibrary_unzip <JW backup>.jwlibrary
Will simply expand to a folder containing the .jwlibrary file, the manifest.json and the userData.db.
You can then simply edit the userData.db with SQLite software.
The JW Library file will be modified, so make a backup of this file if needed.
jwlibrary_zip
pour zipper le contenu:
$ ./jwlibrary_zip -h
Usage: ./jwlibrary_zip <JW folder>
- <JW folder>: WITHOUT the .jwlibrary extension
folder created by jwlibrary_deflate
bears the name of the JW backup file without the .jwlibrary extension
contains the .jwlibrary file, the manifest.json and the userData.db
Will simply update the existing .jwlibrary file with the modified userData.db and the manifest.json.
Will remove these last two files so make a backup if needed.
Exemple : unzip
Nous avons un fichier de sauvegarde UserDataBackup_2022-10-22_TEST.jwlibrary
:
$ ls -1A
UserDataBackup_2022-10-22_TEST.jwlibrary
jwlibrary_unzip
jwlibrary_zip
Ouvrez le contenu de ce fichier :
$ ./jwlibrary_unzip UserDataBackup_2022-10-22_TEST.jwlibrary
Archive: UserDataBackup_2022-10-22_TEST.jwlibrary
inflating: manifest.json
inflating: userData.db
Nous avons maintenant un répertoire avec le nom du fichier de sauvegarde, sans l'extension .jwlibrary
:
$ ls -1A UserDataBackup_2022-10-22_TEST/
UserDataBackup_2022-10-22_TEST.jwlibrary
manifest.json
userData.db
Le fichier de sauvegarde a été déplacé dans ce répertoire.
Vous pouvez maintenant jouer dans le fichier userData.db
.
Exemple : zip
Une fois votre modification de la base de données SQLite effectuée, il est temps de la zipper pour pouvoir la restaurer dans JW Library.
N'entrez pas le répertoire. Tapez simplement la commande avec le nom du répertoire, qui est le nom du fichier de sauvegarde, sans l'extension .jwlibrary
:
$ ./jwlibrary_zip UserDataBackup_2022-10-22_TEST/
updating: manifest.json (deflated 32%)
updating: userData.db (deflated 53%)
Le répertoire est supprimé et le fichier de sauvegarde zip est maintenant de retour dans le répertoire courant, prêt à être restauré dans JW Library.
$ ls -1A
UserDataBackup_2022-10-22_TEST.jwlibrary
jwlibrary_unzip
jwlibrary_zip