Compare commits

...

2 Commits

Author SHA1 Message Date
tTh
d3602d5b21 add exemple for dumpgdbm use 2022-12-03 17:43:04 +01:00
tTh
ec010fef89 enhanced home page 2022-12-03 17:34:53 +01:00
3 changed files with 58 additions and 6 deletions

View File

@ -9,8 +9,44 @@ https://en.wikipedia.org/wiki/DBM_(computing)
## Exemple ## Exemple
Le mini-script Perl `exemple.pl` montre bien comment faire une "base de données Le mini-script Perl `exemple.pl` montre bien comment faire une "base de données
associative" en Perl. associative" en Perl. Il extrait les champs _usernale_ et _GECOS_ du fichier
`/etc/passwd` et les injecte dans un fichier gdbm.
```
tth@redlady:~/Devel/KlugyTools/DumpGDBM$ ./exemple.pl
tth@redlady:~/Devel/KlugyTools/DumpGDBM$ ./dumpgdbm -i exemple.gdbm
working on [exemple.gdbm]
dumpgdbm > first
K: rtkit.
D: RealtimeKit,,,.
dumpgdbm > next
K: man.
D: man.
dumpgdbm > next
K: lightdm.
D: Light Display Manager.
dumpgdbm > ? ks
command [ks]
Search a posix regex pattern in all the key fields.
dumpgdbm > ks root
K: root.
D: root.
dumpgdbm > ks tth
K: tth.
D: tTh,,,.
dumpgdbm >
EOF ?
tth@redlady:~/Devel/KlugyTools/DumpGDBM$
```
Well done bro.

View File

@ -15,6 +15,7 @@ while (<SOURCE>)
@champs = split ":", $_; @champs = split ":", $_;
$user = $champs[0]."\0"; $user = $champs[0]."\0";
$gecos = $champs[4]."\0"; $gecos = $champs[4]."\0";
# print $user, " ", $gecos, "\n";
$DB{$user} = $gecos; $DB{$user} = $gecos;
} }

View File

@ -5,9 +5,24 @@ Divers outils pour faire des choses diverses...
Beaucoup de choses anciennes que je traine de systèmes en systèmes, et qui ont Beaucoup de choses anciennes que je traine de systèmes en systèmes, et qui ont
parfois une utilité limitée. Du code qui a presque vingt ans. parfois une utilité limitée. Du code qui a presque vingt ans.
* DumpGDBM : debug de fichier `key/data` ## DumpGDBM
* Hexdiff : comparer deux fichiers binaires
* Checkresolv : fouiller la résolution de nom. Pour le debug des fichiers `key/data` géres par GDBM. Ligne de commande
aver une interface _readline_.
## Hexdiff
Pour comparer visuellement deux fichiers binaires. Interface `ncurses` trop
choupie. Devrait peut-être un jour (mais flemme) passer à la couleur.
![Hexdiff](http://tboudet.free.fr/hexdiff/ecran.png "Hexdiff")
## Checkresolv
Vieux truc rudimentaire pour fouiller dans la résolution de nom.
L'adaptation à `IPv6` est à l'étude.