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
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 ":", $_;
$user = $champs[0]."\0";
$gecos = $champs[4]."\0";
# print $user, " ", $gecos, "\n";
$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
parfois une utilité limitée. Du code qui a presque vingt ans.
* DumpGDBM : debug de fichier `key/data`
* Hexdiff : comparer deux fichiers binaires
* Checkresolv : fouiller la résolution de nom.
## DumpGDBM
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.