GeneWeb en ligne de commandes

From GeneWeb
Revision as of 14:14, 31 May 2016 by Henri83 (Talk | contribs) (Indexer les notes diverses (update_nldb))

Jump to: navigation, search
150px-Geographylogo svg.png Language: English • français

L’utilisation de GeneWeb en ligne de commande suppose que vous êtes à l’aise avec la notion de fichier et de répertoire et que vous n’avez pas peur de taper des commandes dans une console ; le cas échéant, utilisez plutôt le programme gwsetup plus accessible.

Lancer l’invite de commandes sous Windows 7 : cliquez sur Démarrer, Programmes puis Invite de commandes.

Tous les programmes de GeneWeb sont dans le sous-répertoire gw, pour y accéder :

  • sous Unix, dans une console virtuelle xterm, si GeneWeb est installé dans /home/user/geneweb, tapez :
cd /home/user/geneweb/gw
  • sous Windows, avec l’interprêteur de commande cmd.exe, si GeneWeb est installé dans C:\program files (x86)\geneweb\, tapez :
cd c:\program files (x86)\geneweb\gw

Démarrer un serveur GeneWeb (gwd)

gwd est le serveur qui accepte les requêtes et renvoie les pages de résultat.

  • les requêtes parviennent à gwd sous la forme d'URL contenant des paramètres. gwd se comporte comme un serveur HTTP.
  • les pages résultat sont renvoyées comme du texte. Si la requête a été envoyée depuis un navigateur web (on peut l'envoyer depuis n'importe quel programme compatible HTTP), ce texte sera interprété comme du code HTML.

Au démarrage, gwd affiche une page standard (welcome.txt) sur laquelle l'utilisateur trouvera des zones de capture et des boutons permettant la construction automatique des URL de requête.

Usage: gwd [options] where options are:
 -hd <dir>
      Directory where the directory lang is installed. Dossier où le dossier lang est situé.
 -dd <dir>
      Directory where the documentation is installed. Dossier où la documentation est installée (obsolète?).
 -bd <dir>
      Directory where the databases are installed. dossier où les bases sont installées.
 -wd <dir>
      Directory for socket communication (Windows) and access count. Dossier pour le socket de communication (Windows) et la gestion des compteurs
 -cgi
      Force cgi mode. Travailelr en mode CGI
 -images_url <url>
      URL for GeneWeb images (default: gwd send them). URL pour obtenir les images (par défaut : gwd s'en occupe).
 -images_dir <dir>
      Same than previous but directory name relative to current. Idem, mais dossier relatif au dossier courant
 -a <address>
      Select a specific address (default = any address of this computer). Choisir une adresse spécifique (par défaut : ????)
 -p <number>
      Select a port number (default = 2317); > 1024 for normal users. Choisir un port TCP; > 1024
 -setup_link
      Display a link to local gwsetup in bottom of pages. Afficher un lien vers gwsetup en bas de page.
 -allowed_tags <file>
      HTML tags which are allowed to be displayed. One tag per line in file. Liste des tags HTML autorisés. Un tag par ligne.
 -wizard <passwd>
      Set a wizard password: access to all dates and updating. Definir un mot de passe magicien.
 -friend <passwd>
      Set a friend password: access to all dates. Définir un mot de passe amis.
 -wjf
      Wizard just friend (permanently). Les magiciens ne sont qu'amis.
 -lang <lang>
      Set a default language (default: fr). Langue par défaut.
 -blang
      Select the user browser language if any. Choisir la langue du navicateur si disponible.
 -only <address>
      Only inet address accepted. Adresses Internet acceptées.
 -auth <file>
      Authorization file to restrict access. The file must hold lines of the form "user:password".
      Fichier de mots de passe. Format :  "visiteur:mot_de_passe"
 -no_host_address
      Force no reverse host by address. 
 -digest
      Use Digest authorization scheme (more secure on passwords). Utiliser la méthode Digest pour le contrôle d'accès (meilleurs sécurité).
 -add_lexicon <lexicon>
      Add file as lexicon. ajouter ce fichier au lexique.
 -log <file>
      Redirect log trace to this file. Rediriger les traces vers ce fichier journal.
 -robot_xcl <cnt>,<sec>
      Exclude connections when more than <cnt> requests in <sec> seconds.
 -min_disp_req
      Minimum number of requests in robot trace (default: 6). Nombre minimum de requêtes ????
 -login_tmout <sec>
      Login timeout for entries with passwords in CGI mode (default 1800s). Délai d'attente du login en mode CGI (défaut 1800s).
 -redirect <addr>
      Send a message to say that this service has been redirected to <addr>. envoyer un message indiquant que le service est à une nouvelle adresse.
 -trace_failed_passwd
      Print the failed passwords in log (except if option -digest is set). Enregistrer les mots de passe erronés dans le journal (sauf si -digest est actif).
 -nolock
      Do not lock files before writing. Ne pas verouilelr la base avant l'écriture.
 -max_clients <num>
      Max number of clients treated at the same time (default: no limit). Nombre maximum de clients simultanés (défaut : pas de limite).
      (not cgi).
 -conn_tmout <sec>
      Connection timeout (default 120s; 0 means no limit). Temporisation de connexion (défaut 120s; 0 = pas de limite).
 -daemon
      Unix daemon mode. Mode daemon Unix.
 -chwd <comm>
      Call command when wdoc changed. ??????

Créez une base de données (gwc, gwc1, gwc2)

La commande gwc dans son utilisation la plus simple crée une base de données vide que vous pourrez ensuite remplir sous GeneWeb.

Choisir gwc, gwc1 ou gwc2 :

  • gwc1 est un alias de gwc ;
  • gwc crée une base au format utilisé par les premières versions de GeneWeb :
  • gwc2 (existant depuis GeneWeb 5) crée une base avec une nouvelle structure de fichiers séparés pour chaque table; cette structure est optimisée pour les grosses bases.
Usage: gwc|gwc1|gwc2 [options] [files]
where [files] are a list of files:
  source files end with .gw
  object files end with .gwo
and [options] are:
  -c Only compiling
  -o <file> Output database (default: a.gwb)
  -f  Remove database if already existing
  -stats Print statistics
  -nc No consistency check
  -cg Compute consanguinity
  -sep  Separate all persons in next file
  -sh <int> Shift all persons numbers in next files
  -ds <str> Set the source field for persons and families without source data
  -part <file> Particles file (default = predefined particles)
  -mem  Save memory, but slower
  -nolock  do not lock database.
  -nofail  no failure in case of error.
  -q  no verbose
  -v  verbose

la base définie avec l’option -o doit se trouver dans la même partition que le répertoire courant (pwd). Si ce n’est pas le cas, la compilation se termine avec l’erreur : Uncaught exception: Sys_error("Invalid cross-device link")

Importez un fichier GEDCOM (ged2gwb, ged2gwb2)

La commande ged2gwb vous permet de convertir un fichier GEDCOM en base de données GeneWeb. La variante ged2gwb2 construit une base avec la nouvelle structure de fichiers séparés, plus efficace pour les grandes bases.

Le plus simple est d’abord de copier votre fichier GEDCOM dans le répertoire où vous avez installé GeneWeb.

Si votre fichier GEDCOM s’appelle, par exemple, « toto.ged » et que vous voulez créer une base de nom « dupont », tapez :

ged2gwb toto.ged -o dupont
Usage: ged2gwb [<ged>] [options] where options are:
  -o <file>
       Output database (default: "a").
  -f 
       Remove database if already existing
  -log <file>
       Redirect log trace to this file.
  -lf    - Lowercase first names -
       Convert first names to lowercase letters, with initials in
       uppercase.
  -ls    - Lowercase surnames -
       Convert surnames to lowercase letters, with initials in
       uppercase. Try to keep lowercase particles.
  -us    - Uppercase surnames -
       Convert surnames to uppercase letters.
  -fne be - First names enclosed -
       When creating a person, if the GEDCOM first name part holds
       a part between 'b' (any character) and 'e' (any character), it
       is considered to be the usual first name: e.g. -fne '""' or
       -fne "()".
  -efn   - Extract first names -
       When creating a person, if the GEDCOM first name part holds several
       names, the first of this names becomes the person "first name" and
       the complete GEDCOM first name part a "first name alias".
  -no_efn   - Dont extract first names - [default]
       Cancels the previous option.
  -epn   - Extract public names - [default]
       When creating a person, if the GEDCOM first name part looks like a
       public name, i.e. holds:
       * a number or a roman number, supposed to be a number of a
         nobility title,
       * one of the words: "der", "den", "die", "el", "le", "la",
         "the", supposed to be the beginning of a qualifier,
       then the GEDCOM first name part becomes the person "public name" 
       and its first word his "first name".
  -no_epn 
       Cancels the previous option.
  -no_pit  - No public if titles -
       Do not consider persons having titles as public
  -tnd   - Try negative dates -
       Set negative dates when inconsistency (e.g. birth after death)
  -no_nd  - No negative dates -
       Don't interpret a year preceded by a minus sign as a negative year
  -udi x-y   - Undefined death interval -
       Set the interval for persons whose death part is undefined:
       - if before x years, they are considered as alive
       - if after y year, they are considered as death
       - between x and y year, they are considered as "don't know" 
       Default x is 80 and y is 120
  -uin  - Untreated in notes -
       Put untreated GEDCOM tags in notes
  -ds  - Default source -
       Set the source field for persons and families without source data
  -dates_dm 
       Interpret months-numbered dates as day/month/year
  -dates_md 
       Interpret months-numbered dates as month/day/year
  -charset [ANSEL|ASCII|MSDOS] - charset decoding -
       Force given charset decoding, overriding the possible setting in
       GEDCOM

la base définie avec l’option -o doit se trouver dans la même partition que le répertoire courant (pwd). Si ce n’est pas le cas, la compilation se termine avec l’erreur :

Uncaught exception: Sys_error("Invalid cross-device link")

Exporter un fichier GEDCOM (gwb2ged)

Le programme gwb2ged permet de reconstituer un fichier GEDCOM à partir d’une base GeneWeb.

Usage: ./gwb2ged <base> [options]
If both options -a and -d are used, intersection is assumed.
If several options -s are used, union is assumed.
Options are:
  -charset [ASCII|ANSEL|UTF-8]: set charset; default is UTF-8.
  -o <ged>: output file name (default: a.ged)
  -mem : save memory space, but slower
  -a "<1st_name>" [num] "<surname>": select ancestors of
  -d "<1st_name>" [num] "<surname>": select descendants of
  -aws "<1st_name>" [num] "<surname>" : select ancestors with siblings
  -s "<surname>" : select this surname (option usable several times)
  -nsp : no spouses' parents (for options -s and -d)
  -nn : no (database) notes
  -c <num> :
     When a person is born less than <num> years ago, it is not exported unless
     it is Public. All the spouses and descendants are also censored.

Exporter un fichier GW (gwu)

La commande gwu permet d’afficher le contenu de la base sous forme de texte.

En redirigeant cet affichage vers un fichier, cela peut constituer une sauvegarde de votre base.

Si votre base s’appelle « dupont », et que vous pouvez la sauvegarder dans le fichier « toto.gw », tapez :

gwu dupont > toto.gw

En sauvegardant dans des fichiers différents, après avoir fait des modifications, vous pourrez ainsi comparer différentes versions de votre base, et voir les modifications faites, en utilisant une commande de comparaisons de fichiers. Ceci est particulièrement intéressant si quelqu’un d’autre a fait des modifications dans votre base.

C’est enfin une méthode pour reconstituer votre base quand vous prenez une nouvelle version de GeneWeb, dans le cas où la représention interne des bases a changé.

Pour reconstituer votre base, vous devez utiliser la commande gwc. Le fichier sauvegardé doit avoir obligatoirement l’extension ".gw". Pour fabriquer une base de nom « durand » à partir du fichier « toto.gw » ci-dessus, tapez :

gwc toto.gw -o durand
Usage: ./gwu [options] <base_file>
If both options -a and -d are used, intersection is assumed.
If several options -s are used, union is assumed.
Options are:
  -o <file>    output file name (else stdout)
  -odir <dir>  create files from original name in directory (else on -o file)
  -mem         save memory space, but slower
  -a "<1st_name>" [num] "<surname>" : select ancestors of...
  -d "<1st_name>" [num] "<surname>" : select descendants of...
  -ad "<1st_name>" [num] "<surname>" : select ancestors of...
    and all their descendants (has no effect if -a and/or -d used,
    option -nsp is forced).
  -aws "<1st_name>" [num] "<surname>" : select ancestors with siblings
  -s "<surname>" : select this surname (option usable several times)
  -maxlev "<level>" : maximum level of generations of descendants
  -nsp : no spouses' parents (for options -s and -d)
  -nn : no (database) notes
  -nopicture : Don't extract individual picture.
  -c <num> :
     When a person is born less than <num> years ago, it is not exported unless
     it is Public. All the spouses and descendants are also censored.
  -old_gw : Do not export additional fields (for backward compatibility: < 7.00)
  -raw raw output (without possible utf-8 conversion)
  -v verbose
  -sep "1st_name.num surname" :
     To use together with the option "-odir": separate this person and
     all his ancestors and descendants sharing the same surname. All the
     concerned families are displayed on standard output instead of their
     associated files. This option can be used several times.
  -sep_only_file <file> :
     With option "-sep", tells to separate only groups of that file.
  -sep_limit <num> :
     When using the option "-sep", groups of families can become isolated
     in the files. Gwu reconnects them to the separated families (i.e.
     displays them to standard output) if the size of these groups is less
     than 21. The present option changes this limit.

Calculer les taux de consanguinité (consang)

La commande consang calcule les consanguinités dans une base de données. L’affichage des consanguinités se fait à la consultation de la base, dans les fiches personnelles, et au moment des calculs de parenté.

Mais pour y avoir accès, il faut précalculer les consanguinités individuelles des personnes de la base. C’est ce que permet consang. Si votre base s’appelle toujours dupont, tapez :

consang -i dupont

Le programme va calculer quelques secondes ou minutes, suivant la taille de votre base, en affichant sans arrêt le nombre de personnes restant à traiter. À la fin, vous reprendrez la main dans la fenêtre interactive et les consanguinités individuelles seront enregistrées.

Pendant ce calcul, si vous n’avez pas arrêté le démon, vous pouvez parfaitement retourner dans votre navigateur et consulter votre base.

Lancez consang de temps en temps, si vous avez fait des modifications dans votre base, surtout si ce sont des ajouts, modifications, suppressions de familles : la consanguinité dépend de la structure des familles. Si celle-ci change, les consanguinités individuelles ne sont plus valables et il faut les recalculer.

En outre consang fait un nettoyage interne de votre base, nécessaire après un certain nombre de mises à jour.

NB : L’option « -i » est obligatoire, dans le cas contraire vos index ne sont pas recalculés et votre base ne fonctionnera pas correctement.

usage: ./consang [options] <file_name>
  -q : quiet mode
  -i : build the indexes again
  -scratch : from scratch
  -mem : Save memory, but slower when rewritting database
  -nolock : do not lock database.

Indexer les notes diverses (update_nldb)

La commande update_nldb sert à créer l’index des notes diverses, auquel on accède par la requête m=MISC_NOTES. Elle met également à jour l’intégralité des notes individuelles vis-à-vis des appels de notes.

usage: ./update_nldb [options] <file_name>

Retour à la page principale du manuel.


Manuel GeneWeb

Rembrandt Old Man Reading a Book.jpg

Utiliser et gérer une base généalogique

Annexe technique