Intégration de la branche release-5.0.0

This commit is contained in:
Jephté Clain 2016-08-09 09:43:26 +04:00
commit 6aecf1ed43
313 changed files with 33132 additions and 649 deletions

View File

@ -1,3 +1,77 @@
## Version 5.0.0 du 09/08/2016-09:42
c00d9e4 cgilsxml.py: prévoir le cas où le fichier disparait pendant que la liste est construite
2fc7392 uxpath.py: bug
f85cd8a foreach: implémenter la syntaxe %var par défaut
de383be foreach: définir des variables supplémentaires pour chaque fichier trouvé
a7fd880 foreach: maj doc
c01eb20 ulib/awk: maj doc
04b723f qsql: compatibilité avec anciennes versions de bash
dcf0e61 module apache: ajout de HTDOCSBASE pour le déploiement multi-homé
7565461 woinst: support du déploiement d'applications construites avec Maven
eb0a3be woctl _create: enlever le suffixe .woa par défaut
d251a4e woinst: tenir compte des variables utilisateurs
2fd51b6 pclone bascule automatiquement sur la branche develop si elle existe
d056be4 foreach: ajouter l'option --parent
63e78f4 ulib: compatibilité avec versions précédentes de bash
64699c0 ensure_hostname(): clarification du message affiché
22acf0a ulib: ajouter _qsql() et qsql() pour quoter des chaines sql
18b2501 prel: améliorer l'affichage du résumé
b8bf04b uawk dump: ajouter le format -v qui affiches des variables individuelles
+ d57839d Intégration de la branche cgilsxml
| 6e67302 la disposition, le type et l'encoding peuvent être spécifique à un expression --spec ou --glob
| b7600aa possibilité de matcher des sous-répertoires dans l'expression --spec. Support du match de type --glob
| a49d6e2 les valeurs None ne sont pas affichées. <break_here/> n'a pas de valeur
16c1936 uawk dump: avec la méthode -a, afficher par défaut un tableau vide avant
c6b6dd4 uawk: ajout de l'alias dump qui avait été oublié
d8ab7f7 cgilsxml.py: cosmetic
0204a21 cgilsxml.py: possibilité de classifier des fichiers au sein d'un groupe avec --break-on
3a9bf04 cgilsxml.py: possibilité de spécifier la disposition du contenu, le type de contenu, ainsi que l'encoding
a730609 cgilsxml.py: permettre de télécharger le fichier avec la disposition inline
ce0193f cgilsxml.py: corriger la doc
1eba9a7 foreach: améliorer l'affichage
c669e8f utempl -t wosrc: si on crée un wosrc dans le répertoire java, enlever automatiquement le package pour les fichiers resources pour une configuration maven
f0f7a6f utempl -t wosrc: génère des pages bootstrap par défaut
8fced87 woctl run: permettre de choisir la version de java utilisée pour le lancement
9fe17b3 Ajouter le script foreach
f5db579 uxpath: support de la modification de la valeur d'un noeud
3653f7d Ajout des fonctions {build,eval}cmd et upvar
7091ecf support de la création d'un template wosrc pour un projet maven
34dbba9 support de l'utilisation des valeurs spécifiques de GIT_ANNEX pour rsync avec git-annex
470d7cf pcrone peut utiliser un répertoire existant
e4b7729 corriger le template shell
28bb531 activer l'auto-complétion sur debian jessie
317dbca ajout de compileAndGo dans les templates
01b9a68 ulib/vcs: corriger le code de git_track_branch. Utiliser ce code dans pdev --sync
fc75fcd runsmod: quelques corrections mineures
5058085 runsmod: Implémenter les fonctionnalités documentées
12c521c indenter l'affichage des fonctions qui demandent une saisie de l'utilisateur
86a5787 em: forcer -nw en mode non display
e74d9e4 bug
9218941 ajouter l'option -g à caturl
fcacf64 maj doc
01ea57e changer l'affichage de udir, et mettre à jour la doc
9fe71b3 ajouter fndate pour dater les fichiers
8143452 rendre ppath() plus résistant
+ c9ce115 Intégration de la branche improve-tls
| d9153af support de la configuration tls selon https://wiki.mozilla.org/Security/Server_Side_TLS
135dbf6 diverses corrections sur runs
3d5aeb2 Ajouter l'option -c à umountr
278bf5a renommer rumount un umountr
+ db76c12 Intégration de la branche runsmod-paths
| a31f8c2 changer la convention de nommage pour les répertoires ~/runs
5a31e7e ulib/java: ajout de la fonction get_java_version()
f74b5e3 Générer la doc au format markdown pour tagadoc
ded89be pdev: corrections pour supporter nouvelle version de git
5d3e9fe runsmod: corriger les valeurs par défaut pour les hôtes dans la bulle serveur
ada3686 uenv: bug dans le calcul des répertoires destination
+ deaa416 Intégration de la branche runsmod-only
| f96c482 proposer de créer la configuration par défaut
| f04e862 implémentation initiale de runsmod
42b9590 cosmetic
9bc373f cgiparams.py: implémenter le code de retour
1834d29 intégrer les fonctionnalités de cgiupload.py dans cgiparams.py
## Version 4.4.1 du 15/04/2016-12:24
a45fd99 awkrun: ajouter l'argument suffix à qsql(), cqsql(), cval()

View File

@ -1 +1 @@
4.4.1
5.0.0

21
caturl
View File

@ -7,13 +7,21 @@ function display_help() {
uecho "$scriptname: Afficher une url
USAGE
$scriptname <file.url|file.desktop|URL>"
$scriptname <file.url|file.desktop|URL>
OPTIONS
-c, --check
Vérifier que le fichier est valide
-g, --get
Attaquer l'url spécifiée avec curl"
}
check=
get=
parse_opts "${PRETTYOPTS[@]}" \
--help '$exit_with display_help' \
--check check=1 \
-c,--check check=1 \
-g,--get get=1 \
@ args -- "$@" && set -- "${args[@]}" || die "$args"
function findurl() {
@ -87,5 +95,10 @@ END { if (type == 2) print URL }
fi
fi
[ -n "$check" ] && exit 0
echo "$URL"
if [ -n "$check" ]; then
exit 0
elif [ -n "$get" ]; then
curl -fs "$URL"
else
echo "$URL"
fi

12
doc/EnsureVM.md Normal file
View File

@ -0,0 +1,12 @@
# EnsureVM
~~~
EnsureVM: s'assurer que les services sont lancés pour un type de virtualisation
USAGE
EnsureVM type
Les types supportés sont virtualbox et kvm (par défaut)
~~~
-*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8:noeol:binary

36
doc/SKvm.md Normal file
View File

@ -0,0 +1,36 @@
# SKvm
~~~
SKvm: lancer une machine virtuelle kvm
USAGE
SKvm [options] vmName
SKvm {-l|-A|-g}
OPTIONS
-n, --check
Ne rien faire excepté s'assurer que les modules kvm sont chargés
-u, --user
Lancer l'opération avec les droits de l'utilisateur courant. Par défaut,
ce script tente d'acquérir les droits de root.
-l, --list
Lister les machines virtuelles
-s, --start
Démarrer la machine virtuelle (par défaut)
Si le nom de la machine virtuelle n'est pas spécifiée, un menu est
affiché
-k, --stop
Arrêter la machine virtuelle
-H, --destroy
Arrêter sauvagement la machine virtuelle
-r, --restart
Redémarrer la machine virtuelle
-S, --managed-save
Enregistrer l'état de la machine virtuelle
-A, --stop-all
Arrêter toutes les machines virtuelles qui tournent actuellement
-g, --gui
Afficher le gestionnaire de machines virtuelle
~~~
-*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8:noeol:binary

View File

@ -1,6 +1,6 @@
# -*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8
##@creator: jclain
##@created: 15/03/2012 22:20
##@created: 27/04/2016 03:19
##@modifier: jclain
##@changecount: 1
##@tags:
@ -14,17 +14,27 @@ USAGE
SKvm {-l|-A|-g}
OPTIONS
-n Ne rien faire excepté s'assurer que les modules kvm sont chargés
-u Lancer l'opération avec les droits de l'utilisateur courant. Par défaut,
-n, --check
Ne rien faire excepté s'assurer que les modules kvm sont chargés
-u, --user
Lancer l'opération avec les droits de l'utilisateur courant. Par défaut,
ce script tente d'acquérir les droits de root.
-l Lister les machines virtuelles
-s Démarrer la machine virtuelle (par défaut)
-l, --list
Lister les machines virtuelles
-s, --start
Démarrer la machine virtuelle (par défaut)
Si le nom de la machine virtuelle n'est pas spécifiée, un menu est
affiché
-k Arrêter la machine virtuelle
-H Arrêter sauvagement la machine virtuelle
-r Redémarrer la machine virtuelle
-S Enregistrer l'état de la machine virtuelle
-A Arrêter toutes les machines virtuelles qui tournent actuellement
-g Afficher le gestionnaire de machines virtuelle
-k, --stop
Arrêter la machine virtuelle
-H, --destroy
Arrêter sauvagement la machine virtuelle
-r, --restart
Redémarrer la machine virtuelle
-S, --managed-save
Enregistrer l'état de la machine virtuelle
-A, --stop-all
Arrêter toutes les machines virtuelles qui tournent actuellement
-g, --gui
Afficher le gestionnaire de machines virtuelle
}}}

25
doc/SVirtualBox.md Normal file
View File

@ -0,0 +1,25 @@
# SVirtualBox
~~~
SVirtualBox: lancer une machine virtuelle VirtualBox
USAGE
SVirtualBox [options] vmName
OPTIONS
-n Ne rien faire excepté s'assurer que les modules VirtualBox sont chargés
-l Lister les machines virtuelles
-s Démarrer la machine virtuelle (par défaut)
Si le nom de la machine virtuelle n'est pas spécifiée, un menu est
affiché
-b Démarrer la VM sans interface graphique. Cette option n'est valide
qu'avec -s
-k Arrêter la machine virtuelle (par ACPI)
-p Mettre en veille la machine virtuelle (par ACPI)
-H Arrêter sauvagement la machine virtuelle
-R Redémarrer sauvagement la machine virtuelle
-S Enregistrer l'état de la machine virtuelle
-g Afficher le gestionnaire de machines virtuelle
~~~
-*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8:noeol:binary

View File

@ -1,6 +1,6 @@
# -*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8
##@creator: jclain
##@created: 15/03/2012 22:20
##@created: 27/04/2016 03:19
##@modifier: jclain
##@changecount: 1
##@tags:
@ -18,6 +18,8 @@ OPTIONS
-s Démarrer la machine virtuelle (par défaut)
Si le nom de la machine virtuelle n'est pas spécifiée, un menu est
affiché
-b Démarrer la VM sans interface graphique. Cette option n'est valide
qu'avec -s
-k Arrêter la machine virtuelle (par ACPI)
-p Mettre en veille la machine virtuelle (par ACPI)
-H Arrêter sauvagement la machine virtuelle

8
doc/_root.md Normal file
View File

@ -0,0 +1,8 @@
# _root
~~~
_root: devenir l'utilisateur root, avec 'sudo' si possible, ou 'su' si
'sudo' n'est pas installé
~~~
-*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8:noeol:binary

65
doc/apacheconfig.md Normal file
View File

@ -0,0 +1,65 @@
# apacheconfig
~~~
apacheconfig: Gérer la configuration d'un serveur web apache
USAGE
apacheconfig -c
apacheconfig -t -- args...
OPTIONS
-c, --create
Créer un nouveau répertoire de configuration pour un hôte
-d, --destdir DESTDIR[=apacheconfig]
Nom du répertoire local de configuration.
-t, --template [OPT]
Gérer les fichiers du répertoire local avec templatectl. La valeur de
cette option est utilisée comme argument court pour l'invocation de
templatectl, e.g
apacheconfig -tm args
est équivalent à
templatectl -m args
Les arguments qui restent sont passés tels quels à templatectl
Les options courantes de templatectl -l, -v, -m, -L sont disponibles
directement
--help-template
Afficher l'aide concernent la gestion des templates.
Equivalent à -t -- --help
-h, --host HOST
Spécifier l'hôte. Equivalent à -v host=HOST
--sysname SYSNAME
--sysdist SYSDIST
-s, --sysver SYSVER
Spécifier la distribution pour laquelle synchroniser le template. Par
défaut, choisir les valeurs correspondantes au système courant.
Les options -7 et -8 sont des aliases respectivement pour -s wheezy et
-s jessie, parce que les fichiers par défaut ont changé à partir de
debian jessie.
-u, --update, --deploy
Mettre à jour la configuration système à partir du répertoire local.
Lors du déploiement de la configuration, les valeurs des variables
dynamiques sont remplacées dans les fichiers destination.
Les arguments qui restent sont passés tels quels à apache_autoconf
-r, --certsdir CERTSDIR
Spécifier le cas échéant le répertoire contenant les certificats à
déployer. Cet argument est requis si le répertoire certsconf/ existe.
--localhosts
Créer dans le fichier /etc/hosts tous les noms d'hôte ayant un suffixe
.local mentionnés dans les fichiers de site. Cette option est utile pour
le développement et les tests.
-C, --one-conf CONF
Ne déployer que le fichier de configuration spécifié. Cette option est
utilisée avec --deploy et est utile pour le développement et les tests.
-M, --one-module MODULE
Ne déployer que le fichier de module spécifié. Cette option est utilisée
avec --deploy et est utile pour le développement et les tests.
-S, --one-site SITE
Ne déployer que le fichier de site spécifié. Cette option est utilisée
avec --deploy ou --localhosts et est utile pour le développement et les
tests.
~~~
-*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8:noeol:binary

69
doc/apacheconfig.twp Normal file
View File

@ -0,0 +1,69 @@
# -*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8
##@creator: jclain
##@created: 27/04/2016 03:18
##@modifier: jclain
##@changecount: 1
##@tags:
##@title: apacheconfig
{{{
apacheconfig: Gérer la configuration d'un serveur web apache
USAGE
apacheconfig -c
apacheconfig -t -- args...
OPTIONS
-c, --create
Créer un nouveau répertoire de configuration pour un hôte
-d, --destdir DESTDIR[=apacheconfig]
Nom du répertoire local de configuration.
-t, --template [OPT]
Gérer les fichiers du répertoire local avec templatectl. La valeur de
cette option est utilisée comme argument court pour l'invocation de
templatectl, e.g
apacheconfig -tm args
est équivalent à
templatectl -m args
Les arguments qui restent sont passés tels quels à templatectl
Les options courantes de templatectl -l, -v, -m, -L sont disponibles
directement
--help-template
Afficher l'aide concernent la gestion des templates.
Equivalent à -t -- --help
-h, --host HOST
Spécifier l'hôte. Equivalent à -v host=HOST
--sysname SYSNAME
--sysdist SYSDIST
-s, --sysver SYSVER
Spécifier la distribution pour laquelle synchroniser le template. Par
défaut, choisir les valeurs correspondantes au système courant.
Les options -7 et -8 sont des aliases respectivement pour -s wheezy et
-s jessie, parce que les fichiers par défaut ont changé à partir de
debian jessie.
-u, --update, --deploy
Mettre à jour la configuration système à partir du répertoire local.
Lors du déploiement de la configuration, les valeurs des variables
dynamiques sont remplacées dans les fichiers destination.
Les arguments qui restent sont passés tels quels à apache_autoconf
-r, --certsdir CERTSDIR
Spécifier le cas échéant le répertoire contenant les certificats à
déployer. Cet argument est requis si le répertoire certsconf/ existe.
--localhosts
Créer dans le fichier /etc/hosts tous les noms d'hôte ayant un suffixe
.local mentionnés dans les fichiers de site. Cette option est utile pour
le développement et les tests.
-C, --one-conf CONF
Ne déployer que le fichier de configuration spécifié. Cette option est
utilisée avec --deploy et est utile pour le développement et les tests.
-M, --one-module MODULE
Ne déployer que le fichier de module spécifié. Cette option est utilisée
avec --deploy et est utile pour le développement et les tests.
-S, --one-site SITE
Ne déployer que le fichier de site spécifié. Cette option est utilisée
avec --deploy ou --localhosts et est utile pour le développement et les
tests.
}}}

35
doc/authftp.md Normal file
View File

@ -0,0 +1,35 @@
# authftp
~~~
authftp: Se connecter sur un site FTP authentifié
Ce script nécessite ncftp. Il est conçu pour faciliter l'accès à des sites FTP
s'il est requis d'y accéder par un proxy FTP pour les connexion authentifiées.
USAGE
authftp [options] host login password [path]
OPTIONS
-p, --proxy
-n, --noproxy
Forcer l'utilisation, resp. ne pas utiliser, le proxy FTP (i.e. faire la
connexion directement)
-l, --lftp
Se connecter avec lftp au lieu de ncftp. Le fonctionnement n'est pas
garanti si l'on utilise un proxy FTP.
-o OPTION
Ajouter une option à la commande lancée. Si l'option prend un argument,
il faut doubler l'option -o, e.g.
authftp -l -o -e -o 'mirror remote local' host login pass
Dans cet exemple, l'option -e de lftp est utilisée pour faire un miroir
local du répertoire remote.
--tls
Indiquer que la connexion se fera en TLS. Implique --lftp puisque ncftp
ne le supporte pas.
note: A cause d'une limitation de lftp, ce n'est pas possible de se connecter
automatiquement avec lftp si le mot de passe contient une virgule. A cause de la
façon dont le proxy ftp est configuré, il n'est pas possible de se connecter
avec un mot de passe qui contient le caractère @
~~~
-*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8:noeol:binary

View File

@ -1,18 +1,39 @@
# -*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8
##@creator: jclain
##@created: 15/03/2012 22:19
##@created: 27/04/2016 03:18
##@modifier: jclain
##@changecount: 1
##@tags:
##@title: authftp
{{{
authftp: Se connecter avec ncftp sur un site FTP authentifié
Ce script est conçu pour les sites qui utilisent un proxy FTP pour les connexion
authentifiées.
authftp: Se connecter sur un site FTP authentifié
Ce script nécessite ncftp. Il est conçu pour faciliter l'accès à des sites FTP
s'il est requis d'y accéder par un proxy FTP pour les connexion authentifiées.
USAGE
authftp [options] host login password [path]
OPTIONS
-p, --proxy
-n, --noproxy
Forcer l'utilisation, resp. ne pas utiliser, le proxy FTP (i.e. faire la
connexion directement)
-l, --lftp
Se connecter avec lftp au lieu de ncftp. Le fonctionnement n'est pas
garanti si l'on utilise un proxy FTP.
-o OPTION
Ajouter une option à la commande lancée. Si l'option prend un argument,
il faut doubler l'option -o, e.g.
authftp -l -o -e -o 'mirror remote local' host login pass
Dans cet exemple, l'option -e de lftp est utilisée pour faire un miroir
local du répertoire remote.
--tls
Indiquer que la connexion se fera en TLS. Implique --lftp puisque ncftp
ne le supporte pas.
note: A cause d'une limitation de lftp, ce n'est pas possible de se connecter
automatiquement avec lftp si le mot de passe contient une virgule. A cause de la
façon dont le proxy ftp est configuré, il n'est pas possible de se connecter
avec un mot de passe qui contient le caractère @
}}}

16
doc/caturl.md Normal file
View File

@ -0,0 +1,16 @@
# caturl
~~~
caturl: Afficher une url
USAGE
caturl <file.url|file.desktop|URL>
OPTIONS
-c, --check
Vérifier que le fichier est valide
-g, --get
Attaquer l'url spécifiée avec curl
~~~
-*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8:noeol:binary

View File

@ -1,6 +1,6 @@
# -*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8
##@creator: jclain
##@created: 15/03/2012 22:19
##@created: 13/05/2016 09:36
##@modifier: jclain
##@changecount: 1
##@tags:
@ -11,4 +11,10 @@ caturl: Afficher une url
USAGE
caturl <file.url|file.desktop|URL>
OPTIONS
-c, --check
Vérifier que le fichier est valide
-g, --get
Attaquer l'url spécifiée avec curl
}}}

7
doc/compileAndGo.md Normal file
View File

@ -0,0 +1,7 @@
# compileAndGo
~~~
compileAndGo: see http://Yost.com/computers/compileAndGo
~~~
-*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8:noeol:binary

14
doc/cssh.md Normal file
View File

@ -0,0 +1,14 @@
# cssh
~~~
cssh: Faire une connexion ssh en lançant automatiquement un screen sur l'hôte distant
USAGE
cssh [user@]host [options]
En principe, hormis l'argument user@host, il ne faudrait spécifier que des
options. Dans le cas où d'autres arguments seraient spécifiés, les meilleurs
efforts sont faits pour lancer ces commandes avant screen.
~~~
-*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8:noeol:binary

18
doc/cssh.twp Normal file
View File

@ -0,0 +1,18 @@
# -*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8
##@creator: jclain
##@created: 27/04/2016 03:18
##@modifier: jclain
##@changecount: 1
##@tags:
##@title: cssh
{{{
cssh: Faire une connexion ssh en lançant automatiquement un screen sur l'hôte distant
USAGE
cssh [user@]host [options]
En principe, hormis l'argument user@host, il ne faudrait spécifier que des
options. Dans le cas où d'autres arguments seraient spécifiés, les meilleurs
efforts sont faits pour lancer ces commandes avant screen.
}}}

31
doc/doinplace.md Normal file
View File

@ -0,0 +1,31 @@
# doinplace
~~~
doinplace: filtrer en place un fichier à travers une suite de commandes
USAGE
doinplace FILE COMMAND [ARGS...]
Si on utilise une commande avec des options, penser à utliser '--' pour séparer
les options de ce script des options de la commande
En plus des commandes systèmes, il est possible d'utiliser toute fonction de
nutools qui effectue des traitement sur un flux comme stripnl, filter_empty,
merge_contlines, filter_comment, filter_conf, etc. Les fonctions nl2lf, nl2crlf,
nl2cr, latin1compat et noaccents sont aussi disponibles par convenance.
OPTIONS
-p, --evalp
Evaluer la commande avec evalp(), ce qui permet de chainer plusieurs
commandes en les séparant par //. Cette option est automatiquement
activée si ce script est lancé avec le nom doinplacex
-g, --ignore-error, --replace-always
Normalement, le fichier n'est pas remplacé si la commande retourne une
erreur. Avec cette option, le fichier est remplacé quel que soit le code
de retour de la commande. A utiliser par exemple avec des commandes
comme grep qui peuvent retourner FAUX s'ils ne trouvent pas le motif.
Cette option est automatiquement activée si ce script est lancé avec le
nom doinplacef
~~~
-*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8:noeol:binary

35
doc/doinplace.twp Normal file
View File

@ -0,0 +1,35 @@
# -*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8
##@creator: jclain
##@created: 27/04/2016 03:18
##@modifier: jclain
##@changecount: 1
##@tags:
##@title: doinplace
{{{
doinplace: filtrer en place un fichier à travers une suite de commandes
USAGE
doinplace FILE COMMAND [ARGS...]
Si on utilise une commande avec des options, penser à utliser '--' pour séparer
les options de ce script des options de la commande
En plus des commandes systèmes, il est possible d'utiliser toute fonction de
nutools qui effectue des traitement sur un flux comme stripnl, filter_empty,
merge_contlines, filter_comment, filter_conf, etc. Les fonctions nl2lf, nl2crlf,
nl2cr, latin1compat et noaccents sont aussi disponibles par convenance.
OPTIONS
-p, --evalp
Evaluer la commande avec evalp(), ce qui permet de chainer plusieurs
commandes en les séparant par //. Cette option est automatiquement
activée si ce script est lancé avec le nom doinplacex
-g, --ignore-error, --replace-always
Normalement, le fichier n'est pas remplacé si la commande retourne une
erreur. Avec cette option, le fichier est remplacé quel que soit le code
de retour de la commande. A utiliser par exemple avec des commandes
comme grep qui peuvent retourner FAUX s'ils ne trouvent pas le motif.
Cette option est automatiquement activée si ce script est lancé avec le
nom doinplacef
}}}

26
doc/dumpclients.md Normal file
View File

@ -0,0 +1,26 @@
# dumpclients
~~~
dumpclients: afficher les connexions TCP entrantes sur un port
USAGE
dumpclients [options] port
OPTIONS
-4, --only-tcp
-6, --only-tcp6
Se limiter au protocole spécifié. Par défaut, afficher toutes les
connexions, qu'elles soient en IPv4 ou en IPv6
-a, --all
Afficher tous les sockets, y compris les ports d'écoute. Par défaut,
seules les sockets ouvertes sont affichées.
-n, --numeric
Afficher uniquement les adresses IP au lieu du nom d'hôte.
-z, --allow-no-port
Ne pas exiger que le port soit spécifié
--show none,ip,port,state
Spécifier d'afficher comme informations supplémentaire: rien, l'adresse
ip, le port et/ou l'état. Par défaut, afficher le port et l'état.
~~~
-*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8:noeol:binary

30
doc/dumpclients.twp Normal file
View File

@ -0,0 +1,30 @@
# -*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8
##@creator: jclain
##@created: 27/04/2016 03:18
##@modifier: jclain
##@changecount: 1
##@tags:
##@title: dumpclients
{{{
dumpclients: afficher les connexions TCP entrantes sur un port
USAGE
dumpclients [options] port
OPTIONS
-4, --only-tcp
-6, --only-tcp6
Se limiter au protocole spécifié. Par défaut, afficher toutes les
connexions, qu'elles soient en IPv4 ou en IPv6
-a, --all
Afficher tous les sockets, y compris les ports d'écoute. Par défaut,
seules les sockets ouvertes sont affichées.
-n, --numeric
Afficher uniquement les adresses IP au lieu du nom d'hôte.
-z, --allow-no-port
Ne pas exiger que le port soit spécifié
--show none,ip,port,state
Spécifier d'afficher comme informations supplémentaire: rien, l'adresse
ip, le port et/ou l'état. Par défaut, afficher le port et l'état.
}}}

91
doc/em.md Normal file
View File

@ -0,0 +1,91 @@
# em
~~~
Usage: /usr/bin/emacs [OPTION-OR-FILENAME]...
Run Emacs, the extensible, customizable, self-documenting real-time
display editor. The recommended way to start Emacs for normal editing
is with no options at all.
Run M-x info RET m emacs RET m emacs invocation RET inside Emacs to
read the main documentation for these command-line arguments.
Initialization options:
--batch do not do interactive display; implies -q
--daemon start a server in the background
--debug-init enable Emacs Lisp debugger for init file
--display, -d DISPLAY use X server DISPLAY
--no-desktop do not load a saved desktop
--no-init-file, -q load neither ~/.emacs nor default.el
--no-shared-memory, -nl do not use shared memory
--no-site-file do not load site-start.el
--no-splash do not display a splash screen on startup
--no-window-system, -nw do not communicate with X, ignoring $DISPLAY
--quick, -Q equivalent to -q --no-site-file --no-splash
--script FILE run FILE as an Emacs Lisp script
--terminal, -t DEVICE use DEVICE for terminal I/O
--user, -u USER load ~USER/.emacs instead of your own
Action options:
FILE visit FILE using find-file
+LINE go to line LINE in next FILE
+LINE:COLUMN go to line LINE, column COLUMN, in next FILE
--directory, -L DIR add DIR to variable load-path
--eval EXPR evaluate Emacs Lisp expression EXPR
--execute EXPR evaluate Emacs Lisp expression EXPR
--file FILE visit FILE using find-file
--find-file FILE visit FILE using find-file
--funcall, -f FUNC call Emacs Lisp function FUNC with no arguments
--insert FILE insert contents of FILE into current buffer
--kill exit without asking for confirmation
--load, -l FILE load Emacs Lisp FILE using the load function
--visit FILE visit FILE using find-file
Display options:
--background-color, -bg COLOR window background color
--basic-display, -D disable many display features;
used for debugging Emacs
--border-color, -bd COLOR main border color
--border-width, -bw WIDTH width of main border
--color, --color=MODE override color mode for character terminals;
MODE defaults to `auto', and can also
be `never', `auto', `always',
or a mode name like `ansi8'
--cursor-color, -cr COLOR color of the Emacs cursor indicating point
--font, -fn FONT default font; must be fixed-width
--foreground-color, -fg COLOR window foreground color
--fullheight, -fh make the first frame high as the screen
--fullscreen, -fs make first frame fullscreen
--fullwidth, -fw make the first frame wide as the screen
--maximized, -mm make the first frame maximized
--geometry, -g GEOMETRY window geometry
--no-bitmap-icon, -nbi do not use picture of gnu for Emacs icon
--iconic start Emacs in iconified state
--internal-border, -ib WIDTH width between text and main border
--line-spacing, -lsp PIXELS additional space to put between lines
--mouse-color, -ms COLOR mouse cursor color in Emacs window
--name NAME title for initial Emacs frame
--no-blinking-cursor, -nbc disable blinking cursor
--reverse-video, -r, -rv switch foreground and background
--title, -T TITLE title for initial Emacs frame
--vertical-scroll-bars, -vb enable vertical scroll bars
--xrm XRESOURCES set additional X resources
--parent-id XID set parent window
--help display this help and exit
--version output version information and exit
You can generally also specify long option names with a single -; for
example, -batch as well as --batch. You can use any unambiguous
abbreviation for a --option.
Various environment variables and window system resources also affect
Emacs' operation. See the main documentation.
Report bugs to bug-gnu-emacs@gnu.org. First, please see the Bugs
section of the Emacs manual or the file BUGS.
~~~
-*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8:noeol:binary

95
doc/em.twp Normal file
View File

@ -0,0 +1,95 @@
# -*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8
##@creator: jclain
##@created: 27/04/2016 03:18
##@modifier: jclain
##@changecount: 1
##@tags:
##@title: em
{{{
Usage: /usr/bin/emacs [OPTION-OR-FILENAME]...
Run Emacs, the extensible, customizable, self-documenting real-time
display editor. The recommended way to start Emacs for normal editing
is with no options at all.
Run M-x info RET m emacs RET m emacs invocation RET inside Emacs to
read the main documentation for these command-line arguments.
Initialization options:
--batch do not do interactive display; implies -q
--daemon start a server in the background
--debug-init enable Emacs Lisp debugger for init file
--display, -d DISPLAY use X server DISPLAY
--no-desktop do not load a saved desktop
--no-init-file, -q load neither ~/.emacs nor default.el
--no-shared-memory, -nl do not use shared memory
--no-site-file do not load site-start.el
--no-splash do not display a splash screen on startup
--no-window-system, -nw do not communicate with X, ignoring $DISPLAY
--quick, -Q equivalent to -q --no-site-file --no-splash
--script FILE run FILE as an Emacs Lisp script
--terminal, -t DEVICE use DEVICE for terminal I/O
--user, -u USER load ~USER/.emacs instead of your own
Action options:
FILE visit FILE using find-file
+LINE go to line LINE in next FILE
+LINE:COLUMN go to line LINE, column COLUMN, in next FILE
--directory, -L DIR add DIR to variable load-path
--eval EXPR evaluate Emacs Lisp expression EXPR
--execute EXPR evaluate Emacs Lisp expression EXPR
--file FILE visit FILE using find-file
--find-file FILE visit FILE using find-file
--funcall, -f FUNC call Emacs Lisp function FUNC with no arguments
--insert FILE insert contents of FILE into current buffer
--kill exit without asking for confirmation
--load, -l FILE load Emacs Lisp FILE using the load function
--visit FILE visit FILE using find-file
Display options:
--background-color, -bg COLOR window background color
--basic-display, -D disable many display features;
used for debugging Emacs
--border-color, -bd COLOR main border color
--border-width, -bw WIDTH width of main border
--color, --color=MODE override color mode for character terminals;
MODE defaults to `auto', and can also
be `never', `auto', `always',
or a mode name like `ansi8'
--cursor-color, -cr COLOR color of the Emacs cursor indicating point
--font, -fn FONT default font; must be fixed-width
--foreground-color, -fg COLOR window foreground color
--fullheight, -fh make the first frame high as the screen
--fullscreen, -fs make first frame fullscreen
--fullwidth, -fw make the first frame wide as the screen
--maximized, -mm make the first frame maximized
--geometry, -g GEOMETRY window geometry
--no-bitmap-icon, -nbi do not use picture of gnu for Emacs icon
--iconic start Emacs in iconified state
--internal-border, -ib WIDTH width between text and main border
--line-spacing, -lsp PIXELS additional space to put between lines
--mouse-color, -ms COLOR mouse cursor color in Emacs window
--name NAME title for initial Emacs frame
--no-blinking-cursor, -nbc disable blinking cursor
--reverse-video, -r, -rv switch foreground and background
--title, -T TITLE title for initial Emacs frame
--vertical-scroll-bars, -vb enable vertical scroll bars
--xrm XRESOURCES set additional X resources
--parent-id XID set parent window
--help display this help and exit
--version output version information and exit
You can generally also specify long option names with a single -; for
example, -batch as well as --batch. You can use any unambiguous
abbreviation for a --option.
Various environment variables and window system resources also affect
Emacs' operation. See the main documentation.
Report bugs to bug-gnu-emacs@gnu.org. First, please see the Bugs
section of the Emacs manual or the file BUGS.
}}}

60
doc/fconv.md Normal file
View File

@ -0,0 +1,60 @@
# fconv
~~~
fconv: convertir un fichier ou les fichiers d'un répertoire
USAGE
fconv -f FILE [cmds...]
fconv FILE [cmds...]
Une ou plusieurs commandes peuvent être spécifiées, séparées par //
La commande par défaut est 'lf'
Si des commandes utilisant des options sont utilisées, penser à séparer les
options de fconv avec --
OPTIONS
-N, --detect-always
Pour la commande conv, ne pas optimiser le calcul de l'encoding. Cette
option n'est valide que si src_enc n'est pas spécifié. On assume que
tous les fichiers n'ont pas le même encoding: l'encoding src_enc est
donc recalculé à chaque fois.
-r, --reverse
Pour la commande conv, inverser src_enc et dest_enc, qui doivent être
tous les deux spécifiés.
-f, --file FILE
Spécifier le fichier ou le répertoire concerné par la conversion. Les
aliases -d et --dir sont aussi reconnus.
Si cette option n'est pas spécifiée, le premier argument est considéré
comme le nom du fichier ou du répertoire à convertir. Par défaut,
convertir l'entrée standard.
Si un répertoire est spécifié, tous les fichiers de ce répertoire et de
ses sous-répertoires sont recherchés de façon récursive, sans limite de
profondeur. Ensuite, chacun de ces fichiers est converti.
--show-cmd
Afficher la commande qui serait exécutée
COMMANDES
c, conv dest_enc [src_enc]
Convertir le fichier dans un autre encoding.
dest_enc est l'encoding destination. Il doit être spécifié.
src_enc est l'encoding source. S'il n'est pas spécifié ou vaut 'detect',
il est autodétecté.
U, utf8 [src_enc]
Equivalent à conv utf8 src_enc
L, latin1 [src_enc]
Equivalent à conv latin1 src_enc
lf
crlf
cr
Convertir respectivement les caractères de fin de ligne en LF, CR/LF ou CR
lc, latin1compat
Transformer certains caratères UTF-8 en équivalents qui existent en Latin1
na, noaccents
Transformer les caractères accentués en caractères non accentués
sort [-u]
Trier le fichier avec la commande sort. Attention! Il ne faut utiliser
que les options de sort qui agissent sur un flux e.g. -u pour trier les
lignes de façon unique.
~~~
-*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8:noeol:binary

View File

@ -1,27 +1,64 @@
# -*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8
##@creator: jclain
##@created: 15/03/2012 22:19
##@created: 27/04/2016 03:18
##@modifier: jclain
##@changecount: 1
##@tags:
##@title: fconv
{{{
fconv: convertir des fichiers dans un autre encoding
fconv: convertir un fichier ou les fichiers d'un répertoire
USAGE
fconv [-f src_enc] [ -t dest_enc] [/path/to/file]
fconv -f FILE [cmds...]
fconv FILE [cmds...]
Une ou plusieurs commandes peuvent être spécifiées, séparées par //
La commande par défaut est 'lf'
Si des commandes utilisant des options sont utilisées, penser à séparer les
options de fconv avec --
OPTIONS
-f from
Encoding source. Si n'est pas spécifié ou vaut 'detect', l'encoding est
autodétecté.
-t to
Encoding destination. Doit être spécifié.
Cas particulier: si to vaut 'lf' ou 'crlf', from est ignoré, et seuls
les caractères de fin de lignes sont convertis.
-N Ne pas optimiser le calcul de l'encoding. Cette option n'est valide que
si -f n'est pas spécifié. On assume que tous les noms de fichiers n'ont
pas le même encoding. L'encoding from est donc recalculé à chaque fois.
-r inverser from et to, qui doivent être tous les deux spécifiés.
-N, --detect-always
Pour la commande conv, ne pas optimiser le calcul de l'encoding. Cette
option n'est valide que si src_enc n'est pas spécifié. On assume que
tous les fichiers n'ont pas le même encoding: l'encoding src_enc est
donc recalculé à chaque fois.
-r, --reverse
Pour la commande conv, inverser src_enc et dest_enc, qui doivent être
tous les deux spécifiés.
-f, --file FILE
Spécifier le fichier ou le répertoire concerné par la conversion. Les
aliases -d et --dir sont aussi reconnus.
Si cette option n'est pas spécifiée, le premier argument est considéré
comme le nom du fichier ou du répertoire à convertir. Par défaut,
convertir l'entrée standard.
Si un répertoire est spécifié, tous les fichiers de ce répertoire et de
ses sous-répertoires sont recherchés de façon récursive, sans limite de
profondeur. Ensuite, chacun de ces fichiers est converti.
--show-cmd
Afficher la commande qui serait exécutée
COMMANDES
c, conv dest_enc [src_enc]
Convertir le fichier dans un autre encoding.
dest_enc est l'encoding destination. Il doit être spécifié.
src_enc est l'encoding source. S'il n'est pas spécifié ou vaut 'detect',
il est autodétecté.
U, utf8 [src_enc]
Equivalent à conv utf8 src_enc
L, latin1 [src_enc]
Equivalent à conv latin1 src_enc
lf
crlf
cr
Convertir respectivement les caractères de fin de ligne en LF, CR/LF ou CR
lc, latin1compat
Transformer certains caratères UTF-8 en équivalents qui existent en Latin1
na, noaccents
Transformer les caractères accentués en caractères non accentués
sort [-u]
Trier le fichier avec la commande sort. Attention! Il ne faut utiliser
que les options de sort qui agissent sur un flux e.g. -u pour trier les
lignes de façon unique.
}}}

54
doc/fnconv.md Normal file
View File

@ -0,0 +1,54 @@
# fnconv
~~~
fnconv: renommer un fichier ou les fichiers d'un répertoire
USAGE
fnconv -f FILE [cmds...]
fnconv FILE [cmds...]
Une ou plusieurs commandes peuvent être spécifiées, séparées //
La commande par défaut est 'fixcase'
OPTIONS
-N, --detect-always
Pour la commande conv, ne pas optimiser le calcul de l'encoding. Cette
option n'est valide que si src_enc n'est pas spécifié. On assume que
tous les fichiers n'ont pas le même encoding: l'encoding src_enc est
donc recalculé à chaque fois.
-r, --reverse
Pour la commande conv, inverser src_enc et dest_enc, qui doivent être
tous les deux spécifiés.
-f, --file FILE
Spécifier le fichier ou le répertoire concerné par le renommage. Les
aliases -d et --dir sont aussi reconnus.
Si cette option n'est pas spécifiée, le premier argument est considéré
comme le nom du fichier ou du répertoire à renommer.
Si un répertoire est spécifié, le traitement est appliqué à tous les
fichiers et répertoires de façon récursive, sans limite de profondeur.
--show-cmd
Afficher la commande qui serait exécutée
COMMANDES
C, conv dest_enc [src_enc]
Convertir le nom du fichier dans un autre encoding.
dest_enc est l'encoding destination. Il doit être spécifié.
src_enc est l'encoding source. S'il n'est pas spécifié ou vaut 'detect',
il est autodétecté.
U, utf8 [src_enc]
Equivalent à conv utf8 src_enc
L, latin1 [src_enc]
Equivalent à conv latin1 src_enc
lc, latin1compat
Transformer certains caratères UTF-8 en équivalents qui existent en Latin1
na, noaccents
Transformer les caractères accentués en caractères non accentués
l, lowercase
Transfomer le nom en minuscule
u, uppercase
Transformer le nom en majuscule
f, fixcase
Transformer le nom en minuscule s'il est entièrement en majuscule
~~~
-*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8:noeol:binary

View File

@ -1,25 +1,58 @@
# -*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8
##@creator: jclain
##@created: 15/03/2012 22:19
##@created: 27/04/2016 03:18
##@modifier: jclain
##@changecount: 1
##@tags:
##@title: fnconv
{{{
fnconv: renommer des fichiers en changeant leur encoding
fnconv: renommer un fichier ou les fichiers d'un répertoire
USAGE
fnconv [-f src_enc] [ -t dest_enc] [/path/to/file]
fnconv -f FILE [cmds...]
fnconv FILE [cmds...]
Une ou plusieurs commandes peuvent être spécifiées, séparées //
La commande par défaut est 'fixcase'
OPTIONS
-f from
Encoding source. Si n'est pas spécifié ou vaut 'detect', l'encoding est
autodétecté.
-t to
Encoding destination. Doit être spécifié.
-N Ne pas optimiser le calcul de l'encoding. Cette option n'est valide que
si -f n'est pas spécifié. On assume que tous les noms de fichiers n'ont
pas le même encoding. L'encoding from est donc recalculé à chaque fois.
-r inverser from et to, qui doivent être tous les deux spécifiés.
-N, --detect-always
Pour la commande conv, ne pas optimiser le calcul de l'encoding. Cette
option n'est valide que si src_enc n'est pas spécifié. On assume que
tous les fichiers n'ont pas le même encoding: l'encoding src_enc est
donc recalculé à chaque fois.
-r, --reverse
Pour la commande conv, inverser src_enc et dest_enc, qui doivent être
tous les deux spécifiés.
-f, --file FILE
Spécifier le fichier ou le répertoire concerné par le renommage. Les
aliases -d et --dir sont aussi reconnus.
Si cette option n'est pas spécifiée, le premier argument est considéré
comme le nom du fichier ou du répertoire à renommer.
Si un répertoire est spécifié, le traitement est appliqué à tous les
fichiers et répertoires de façon récursive, sans limite de profondeur.
--show-cmd
Afficher la commande qui serait exécutée
COMMANDES
C, conv dest_enc [src_enc]
Convertir le nom du fichier dans un autre encoding.
dest_enc est l'encoding destination. Il doit être spécifié.
src_enc est l'encoding source. S'il n'est pas spécifié ou vaut 'detect',
il est autodétecté.
U, utf8 [src_enc]
Equivalent à conv utf8 src_enc
L, latin1 [src_enc]
Equivalent à conv latin1 src_enc
lc, latin1compat
Transformer certains caratères UTF-8 en équivalents qui existent en Latin1
na, noaccents
Transformer les caractères accentués en caractères non accentués
l, lowercase
Transfomer le nom en minuscule
u, uppercase
Transformer le nom en majuscule
f, fixcase
Transformer le nom en minuscule s'il est entièrement en majuscule
}}}

10
doc/geturl.md Normal file
View File

@ -0,0 +1,10 @@
# geturl
~~~
geturl: Télécharger un fichier avec wget ou curl
USAGE
geturl <file.url|file.desktop|URL> [wget options]
~~~
-*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8:noeol:binary

35
doc/index.md Normal file
View File

@ -0,0 +1,35 @@
# Présentation
nutools est un ensemble d'utilitaires pour faciliter l'utililisation des Unixes,
en particulier Linux, mais aussi MacOS X et Cygwin.
C'est aussi une librairie de scripts shell réutilisables ([ulib]()) et une
librairie de modules python réutilisables (pyulib)
# Prérequis
Python >= 2.3 et GNU Awk sont requis pour que toutes les fonctionnalités soient
supportées.
* Sous Linux, lors de l'installation du package, les meilleurs efforts sont fait
pour que ces packages soient installés.
* Sous MacOSX, il faut installer manuellement Fink, DarwinPorts ou Homebrew
# Outils
Chaque outil contient une aide intégrée. Il suffit de lancer l'outil avec
l'argument `--help` pour avoir une aide détaillée.
* Déploiement d'un répertoire ou d'une archive
* [uinst](): Déploiement local
* [mkusfx](): Faire une archive auto-installable avec uinst
* [ruinst](): Déploiement distant avec uinst
* [runs](): Lancer un script avec le protocole RUNS
* [rruns](): Déploiement distant avec runs
* Librairie réutilisable de scripts shell
* [uinc](): Dépliage des inclusions dans un fichier
* [ulibsync](): Faire une copie locale pour un projet de ulib et/ou pyulib
* Autres outils
* [udir](): Gestion des paramètres d'un répertoire. Ces paramètres sont entre
autres utilisés par uinst et uinc.
-*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8:noeol:binary

82
doc/mkRewriteRules.md Normal file
View File

@ -0,0 +1,82 @@
# mkRewriteRules
~~~
mkRewriteRules: Créer un fichier de redirections pour Apache à partir d'un certain
nombre de règles
USAGE
mkRewriteRules -f rewrite.rules [-o RewriteRules.conf] [-w RewriteRules.html] host
OPTIONS
-p Générer les directives <Proxy...> et tenir compte de proxy_acls
Par défaut, le champ proxy_acls est ignoré
FORMAT des règles de mapping
============================
Les commentaires commencent par le signe "#"
Les règles sont de la forme:
src:dest:host:suffix:OPTS:prot:proxy_acls
^prefix
=literal
prot vaut par défaut http. Il peut valoir aussi https
Si dest ou suffix se terminent par $, on est en mode NO_SLASH
En mode NO_SLASH, si src se termine par $, on est en mode NO_TRAIL
* Si dest est de la forme Application.woa
En mode NO_SLASH, on génère
RewriteRule ^/src(.*) [prot://host]/cgi-bin/WebObjects/dest[/suffix]$1 [L,OPTS]
En mode NO_SLASH+NO_TRAIL, on génère
RewriteRule ^/src [prot://host]/cgi-bin/WebObjects/dest[/suffix] [L,OPTS]
En mode normal, on génère
RewriteRule ^/src$ /src/
RewriteRule ^/src/(.*) [prot://host]/cgi-bin/WebObjects/dest[/suffix]/$1 [L,OPTS]
* Si dest n'est pas de la forme Application.woa
En mode NO_SLASH, on génère
RewriteRule ^/src(.*) [prot://host]/dest[/suffix]$1 [L,OPTS]
En mode NO_SLASH+NO_TRAIL, on génère
RewriteRule ^/src [prot://host]/dest[/suffix] [L,OPTS]
En mode normal, on génère
RewriteRule ^/src$ /src/
RewriteRule ^/src/(.*) /dest[/suffix]/$1 [L,OPTS]
Si une règle est précédée d'une ou plusieurs lignes de la forme "^prefix",
ces lignes sont copiées avant chacune des commandes RewriteRule générées
pour une règle. Ceci permet d'ajouter des conditions avec RewriteCond pour
une règle. e.g.
^RewriteCond %{REMOTE_ADDR} 10\..*
src:dest.woa
qui génère:
RewriteCond %{REMOTE_ADDR} 10\..*
RewriteRule ^/src$ /src/
RewriteCond %{REMOTE_ADDR} 10\..*
RewriteRule ^/src/(.*) /cgi-bin/WebObjects/dest.woa/$1 [L]
Une ligne de la forme "=literal" est recopiée sans modifications (sans le "=")
dans le fichier de sortie.
proxy_acls est utilisé si l'option -p est spécifiée et OPTS contient P (comme
proxy), ou si le mode de réécriture requière l'utilisation d'un proxy.
* Avec la valeur "None", aucune directive <Proxy> n'est générée
* Si aucune valeur n'est spécifiée, la directive suivante est générée:
<Proxy $URL>
AddDefaultCharset off
Order Deny,Allow
Allow from all
</Proxy>
* Si une valeur est spécifiée, la directive suivante est générée:
<Proxy $URL>
AddDefaultCharset off
Order Allow,Deny
Allow from $proxy_acls
</Proxy>
Dans les exemples donnés ci-dessus, $URL est l'url générée par la réécriture,
et $proxy_acls la valeur du champ proxy_acls spécifiée ci-dessus.
~~~
-*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8:noeol:binary

21
doc/mkiso.md Normal file
View File

@ -0,0 +1,21 @@
# mkiso
~~~
mkiso: créer une image iso d'un répertoire
USAGE
mkiso [options] srcdir [dest.iso]
OPTIONS
-M, --hfs
créer une image hybride ISO/HFS
-V, --volume
Nom du volume. Par défaut, prendre le nom de base du répertoire
d'origine. La taille est de 32 caractères max.
-A, --application
Description de l'application qui est sur l'image créée. Par défaut,
prendre le nom de base du répertoire d'origine. La taille est de 128
caractères max.
~~~
-*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8:noeol:binary

View File

@ -1,6 +1,6 @@
# -*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8
##@creator: jclain
##@created: 15/03/2012 22:19
##@created: 27/04/2016 03:18
##@modifier: jclain
##@changecount: 1
##@tags:
@ -15,4 +15,11 @@ USAGE
OPTIONS
-M, --hfs
créer une image hybride ISO/HFS
-V, --volume
Nom du volume. Par défaut, prendre le nom de base du répertoire
d'origine. La taille est de 32 caractères max.
-A, --application
Description de l'application qui est sur l'image créée. Par défaut,
prendre le nom de base du répertoire d'origine. La taille est de 128
caractères max.
}}}

16
doc/mkurl.md Normal file
View File

@ -0,0 +1,16 @@
# mkurl
~~~
mkurl: Enregistrer une url dans un fichier raccourci
USAGE
mkurl <url> [output]
OPTIONS
Par défaut, l'url est enregistrée dans un fichier homepage.url
Mais il est possible de spécifier un fichier avec l'extension .url pour un
raccourci utilisable aussi sous Windows, ou avec l'extension .desktop pour
compatibilité avec le standard XDG
~~~
-*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8:noeol:binary

31
doc/mkusfx.md Normal file
View File

@ -0,0 +1,31 @@
# mkusfx
~~~
mkusfx: Créer une archive auto-extractible qui installe son contenu avec uinst
USAGE
mkusfx [options] [--bare] src cmd...
mkusfx [options] [--uinst] src
OPTIONS
--bare
Installer le contenu de l'archive en lançant la commande 'cmd...' avec
le répertoire courant étant le contenu de l'archive. Typiquement, ce
sera une commande de forme './script', où script est un fichier situé à
la racine de l'archive
Dans ce mode d'installation, l'option --self-contained est ignorée.
--uinst
Installer le contenu de l'archive avec uinst (par défaut)
-o dest
Spécifier le fichier de sortie. Par défaut, il s'agit de
${src}-installer.run
--tmp-archive
Spécifier qu'il s'agit d'une archive temporaire. Cette archive
s'auto-détruit après utilisation.
--self-contained
Spécifier que l'archive doit pouvoir s'installer même sur un système sur
lequel nutools n'est pas installé. Cette archive contiendra une copie
locale de ulib et uinst.sh
~~~
-*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8:noeol:binary

26
doc/mocifs.md Normal file
View File

@ -0,0 +1,26 @@
# mocifs
~~~
mocifs: Monter un partage Windows/Samba/CIFS
USAGE
mocifs [user@]host[/path] [mountpoint]
Par défaut, le répertoire distant est montée sur un répertoire avec le même nom
de base que l'hôte. Si le répertoire distant est déjà monté, il est démonté.
Les options -M et -U permettent de modifier le comportement par défaut.
OPTIONS
-M
Forcer le montage
-U
Forcer le démontage
-o OPTIONS
Ajouter les options spécifiées à la commande de montage mount.cifs
-u USERNAME
-p PASSWORD
-c USERNAME:PASSWORD
Spécifier les credentials à utiliser pour la connexion
~~~
-*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8:noeol:binary

30
doc/mocifs.twp Normal file
View File

@ -0,0 +1,30 @@
# -*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8
##@creator: jclain
##@created: 27/04/2016 03:18
##@modifier: jclain
##@changecount: 1
##@tags:
##@title: mocifs
{{{
mocifs: Monter un partage Windows/Samba/CIFS
USAGE
mocifs [user@]host[/path] [mountpoint]
Par défaut, le répertoire distant est montée sur un répertoire avec le même nom
de base que l'hôte. Si le répertoire distant est déjà monté, il est démonté.
Les options -M et -U permettent de modifier le comportement par défaut.
OPTIONS
-M
Forcer le montage
-U
Forcer le démontage
-o OPTIONS
Ajouter les options spécifiées à la commande de montage mount.cifs
-u USERNAME
-p PASSWORD
-c USERNAME:PASSWORD
Spécifier les credentials à utiliser pour la connexion
}}}

40
doc/modav.md Normal file
View File

@ -0,0 +1,40 @@
# modav
~~~
modav: Monter un répertoire sur un hôte distant avec davfs
USAGE
modav http[s]://host[/path] [mountpoint]
Par défaut, le répertoire distant est montée sur un répertoire avec le même nom
de base que l'hôte. Si le répertoire distant est déjà monté, il est démonté.
Les options -M et -U permettent de modifier le comportement par défaut.
OPTIONS
-M
Forcer le montage
-U
Forcer le démontage
-o OPTIONS
Ajouter les options spécifiées à la commande de montage
-u USERNAME
-p PASSWORD
-c USERNAME:PASSWORD
Si les credentials à utiliser ne sont pas configuré dans le fichier
/etc/davfs2/secrets, cette option permet de les spécifier. Si cette
option est utilisée, il est possible de rajouter
ask_auth 0
dans le fichier /etc/davfs2/davfs2.conf pour éviter le conflit qui se
produit quand des informations sont demandées interactivement. C'est le
cas par exemple si une connexion en https est faite et que la chaine de
certification n'est pas configurée. Pour mémoire, cela se fait avec
servercert myCAs.pem
dans le fichier /etc/davfs2/davfs2.conf
Bien entendu, il est préférable de configurer les credentials dans le
fichier /etc/davfs2/secrets avec la syntaxe
url username password
ou
mountpoint username password
~~~
-*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8:noeol:binary

44
doc/modav.twp Normal file
View File

@ -0,0 +1,44 @@
# -*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8
##@creator: jclain
##@created: 27/04/2016 03:18
##@modifier: jclain
##@changecount: 1
##@tags:
##@title: modav
{{{
modav: Monter un répertoire sur un hôte distant avec davfs
USAGE
modav http[s]://host[/path] [mountpoint]
Par défaut, le répertoire distant est montée sur un répertoire avec le même nom
de base que l'hôte. Si le répertoire distant est déjà monté, il est démonté.
Les options -M et -U permettent de modifier le comportement par défaut.
OPTIONS
-M
Forcer le montage
-U
Forcer le démontage
-o OPTIONS
Ajouter les options spécifiées à la commande de montage
-u USERNAME
-p PASSWORD
-c USERNAME:PASSWORD
Si les credentials à utiliser ne sont pas configuré dans le fichier
/etc/davfs2/secrets, cette option permet de les spécifier. Si cette
option est utilisée, il est possible de rajouter
ask_auth 0
dans le fichier /etc/davfs2/davfs2.conf pour éviter le conflit qui se
produit quand des informations sont demandées interactivement. C'est le
cas par exemple si une connexion en https est faite et que la chaine de
certification n'est pas configurée. Pour mémoire, cela se fait avec
servercert myCAs.pem
dans le fichier /etc/davfs2/davfs2.conf
Bien entendu, il est préférable de configurer les credentials dans le
fichier /etc/davfs2/secrets avec la syntaxe
url username password
ou
mountpoint username password
}}}

20
doc/moiso.md Normal file
View File

@ -0,0 +1,20 @@
# moiso
~~~
moiso: Monter une image ISO
USAGE
moiso image.iso [mountpoint]
Par défaut, l'image iso est montée sur un répertoire avec le même nom de base.
Si l'image est déjà montée, elle est démontée. Les options -m et -u permettent
de modifier le comportement par défaut.
OPTIONS
-m
Forcer le montage
-u
Forcer le démontage
~~~
-*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8:noeol:binary

24
doc/moiso.twp Normal file
View File

@ -0,0 +1,24 @@
# -*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8
##@creator: jclain
##@created: 27/04/2016 03:18
##@modifier: jclain
##@changecount: 1
##@tags:
##@title: moiso
{{{
moiso: Monter une image ISO
USAGE
moiso image.iso [mountpoint]
Par défaut, l'image iso est montée sur un répertoire avec le même nom de base.
Si l'image est déjà montée, elle est démontée. Les options -m et -u permettent
de modifier le comportement par défaut.
OPTIONS
-m
Forcer le montage
-u
Forcer le démontage
}}}

29
doc/mossh.md Normal file
View File

@ -0,0 +1,29 @@
# mossh
~~~
mossh: Monter un répertoire sur un hôte distant avec sshfs
USAGE
mossh [user@]host[:/path] [mountpoint]
Par défaut, le répertoire distant est montée sur un répertoire avec le même nom
de base que l'hôte. Si le répertoire distant est déjà monté, il est démonté.
Les options -M et -U permettent de modifier le comportement par défaut.
OPTIONS
-M
Forcer le montage
-U
Forcer le démontage
-o OPTIONS
Ajouter les options spécifiées à la commande de montage
-s
Equivalent à -o allow_other ou -o allow_root selon que l'on est root ou
non
-u USER
Spécifier le user pour la connexion distante, s'il n'est pas possible de
le spécifier dans l'url. En cas de conflit, la valeur dans l'url est
prioritaire par rapport à cette option.
~~~
-*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8:noeol:binary

33
doc/mossh.twp Normal file
View File

@ -0,0 +1,33 @@
# -*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8
##@creator: jclain
##@created: 27/04/2016 03:18
##@modifier: jclain
##@changecount: 1
##@tags:
##@title: mossh
{{{
mossh: Monter un répertoire sur un hôte distant avec sshfs
USAGE
mossh [user@]host[:/path] [mountpoint]
Par défaut, le répertoire distant est montée sur un répertoire avec le même nom
de base que l'hôte. Si le répertoire distant est déjà monté, il est démonté.
Les options -M et -U permettent de modifier le comportement par défaut.
OPTIONS
-M
Forcer le montage
-U
Forcer le démontage
-o OPTIONS
Ajouter les options spécifiées à la commande de montage
-s
Equivalent à -o allow_other ou -o allow_root selon que l'on est root ou
non
-u USER
Spécifier le user pour la connexion distante, s'il n'est pas possible de
le spécifier dans l'url. En cas de conflit, la valeur dans l'url est
prioritaire par rapport à cette option.
}}}

65
doc/mysqlcsv.md Normal file
View File

@ -0,0 +1,65 @@
# mysqlcsv
~~~
mysqlcsv: Faire une requête MySQL et formater la sortie pour traitement avec awkcsv
USAGE
mysqlcsv [query [db]] [-- mysql options]
query est la requête sql à exécuter. Si query n'est pas spécifiée, la(les)
requête(s) sql sont prises sur l'entrée standard, ou depuis un fichier
si l'option -f est spécifiée.
db est le nom de la base de données. Cette argument n'est lu que si le nom
de la base de donnée n'est ni spécifié dans le fichier de configuration,
ni spécifié avec l'option -D
OPTIONS
-h, --host HOST
-P, --port PORT
-u, --user USER
-pPASSWORD
-D, --database DATABASE
Informations de connexion à la base de données
-C, --config CONFIG
Prendre les informations de connexion depuis le fichier spécifié.
Le fichier doit être de la forme
host=HOST
#post=3306
user=USER
password=PASS
#database=DB
#query=QUERY
Les variables port, database et query sont facultatives.
Les valeurs définies dans ce fichier sont prioritaires par rapport à
celles qui auraient été spécifiées sur la ligne de commande.
Utiliser password=--NOT-SET-- s'il faut se connecter sans mot de passe
Cette option peut être utilisée plusieurs fois, auquel cas les fichiers
sont chargés dans l'ordre.
--profile PROFILE
La variable $PROFILE est définie avec la valeur spécifiée avant de
sourcer les fichiers de configuration. Cela permet d'avoir des fichiers
de configuration qui calculent dynamiquement les paramètres en fonction
de la valeur du profil.
-N, --no-headers
Ne pas afficher les en-têtes
-c, --force
Continuer le traitement même en cas d'erreur
-r, --raw
Ne pas autoriser mysql à mettre en échappement certaines valeurs
retournées par le serveur. Par défaut, les transformations suivantes
sont effectuées:
newline --> \n
tab --> \t
nul --> \0
\ --> \\
-n, --nulls
Transformer dans le flux en sortie les valeurs NULL en chaines vides
-f, --input INPUT
Lire la requête depuis le fichier input au lieu de le lire depuis la
ligne de commande ou l'entrée standard. Ne pas spécifier cette option
ou utiliser '-' pour lire depuis l'entrée standard.
Cette option est ignorée si la requête est spécifiée parmi les
arguments.
~~~
-*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8:noeol:binary

69
doc/mysqlcsv.twp Normal file
View File

@ -0,0 +1,69 @@
# -*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8
##@creator: jclain
##@created: 27/04/2016 03:18
##@modifier: jclain
##@changecount: 1
##@tags:
##@title: mysqlcsv
{{{
mysqlcsv: Faire une requête MySQL et formater la sortie pour traitement avec awkcsv
USAGE
mysqlcsv [query [db]] [-- mysql options]
query est la requête sql à exécuter. Si query n'est pas spécifiée, la(les)
requête(s) sql sont prises sur l'entrée standard, ou depuis un fichier
si l'option -f est spécifiée.
db est le nom de la base de données. Cette argument n'est lu que si le nom
de la base de donnée n'est ni spécifié dans le fichier de configuration,
ni spécifié avec l'option -D
OPTIONS
-h, --host HOST
-P, --port PORT
-u, --user USER
-pPASSWORD
-D, --database DATABASE
Informations de connexion à la base de données
-C, --config CONFIG
Prendre les informations de connexion depuis le fichier spécifié.
Le fichier doit être de la forme
host=HOST
#post=3306
user=USER
password=PASS
#database=DB
#query=QUERY
Les variables port, database et query sont facultatives.
Les valeurs définies dans ce fichier sont prioritaires par rapport à
celles qui auraient été spécifiées sur la ligne de commande.
Utiliser password=--NOT-SET-- s'il faut se connecter sans mot de passe
Cette option peut être utilisée plusieurs fois, auquel cas les fichiers
sont chargés dans l'ordre.
--profile PROFILE
La variable $PROFILE est définie avec la valeur spécifiée avant de
sourcer les fichiers de configuration. Cela permet d'avoir des fichiers
de configuration qui calculent dynamiquement les paramètres en fonction
de la valeur du profil.
-N, --no-headers
Ne pas afficher les en-têtes
-c, --force
Continuer le traitement même en cas d'erreur
-r, --raw
Ne pas autoriser mysql à mettre en échappement certaines valeurs
retournées par le serveur. Par défaut, les transformations suivantes
sont effectuées:
newline --> \n
tab --> \t
nul --> \0
\ --> \\
-n, --nulls
Transformer dans le flux en sortie les valeurs NULL en chaines vides
-f, --input INPUT
Lire la requête depuis le fichier input au lieu de le lire depuis la
ligne de commande ou l'entrée standard. Ne pas spécifier cette option
ou utiliser '-' pour lire depuis l'entrée standard.
Cette option est ignorée si la requête est spécifiée parmi les
arguments.
}}}

108
doc/mysqlloadcsv.md Normal file
View File

@ -0,0 +1,108 @@
# mysqlloadcsv
~~~
mysqlloadcsv: Charger une table MySQL avec un fichier csv
USAGE
mysqlloadcsv [db.]table [fields...] [-- mysql options]
db est le nom de la base de données
table est le nom de la table à charger
fields est la liste des colonnes. Si cette valeur est spécifiée, il faudra
peut-être utiliser l'option -s pour ignorer le cas échéant la ligne des
en-têtes dans le fichier en entrée. Sinon, les colonnes à utiliser sont
calculées à partir du fichier en entrée.
Dans les données en entrées, qui doivent être en UTF8, les conversions suivantes
sont effectuées par MySQL:
\0 --> <caractère NUL>
\b --> <backspace>
\n --> <newline>
\r --> <carriage return>
\t --> <tab>
\Z --> Ctrl+Z
\N --> NULL
OPTIONS
-h, --host host
-P, --port port
-u, --user user
-ppassword
Informations de connexion à la base de données
-C, --config CONFIG
Prendre les informations de connexion depuis le fichier spécifié.
Le fichier doit être de la forme
host=HOST.TLD
#post=3306
user=USER
password=PASS
#dbtable=DB.TABLE
#fields=(FIELDS...)
# Il est possible aussi de spécifier DB et TABLE séparément:
#database=DB
#table=TABLE
Les variables port, dbtable et fields sont facultatives.
Les valeurs définies dans ce fichier sont prioritaires par rapport à
celles qui auraient été spécifiées sur la ligne de commande.
Utiliser password=--NOT-SET-- s'il faut se connecter sans mot de passe
Cette option peut être utilisée plusieurs fois, auquel cas les fichiers
sont chargés dans l'ordre.
--profile PROFILE
La variable $PROFILE est définie avec la valeur spécifiée avant de
sourcer les fichiers de configuration. Cela permet d'avoir des fichiers
de configuration qui calculent dynamiquement les paramètres en fonction
de la valeur du profil.
-f, --input INPUT
Fichier en entrée. Ne pas spécifier cette option ou utiliser '-' pour
lire depuis l'entrée standard.
-d, --auto-dbtable DB
Spécifier la base de données avec laquelle se connecter. De plus, si le
nom de la table n'est pas spécifié, prendre par défaut le nom de base du
fichier spécifié avec l'option -f
-s, --skip-lines NBLINES
Nombre de lignes à sauter dans le fichier en entrée
-n, --fake
Ne pas effectuer l'opération. Afficher simplement la commande SQL.
--run
Forcer le lancement de l'opération. Utiliser cette option avec -A pour
créer la table avec les paramètres analysés.
-T, --truncate
Vider la table avant d'effectuer le chargement
-L, --load-data
Charger les données avec la commande 'load data local'. C'est l'option
par défaut. Le fichier est transmis tel quel à MySQL.
-I, --insert-data
Charger les données en générant des commandes 'insert into'. L'effet est
en principe le même avec l'option -L (sauf que certains formats de date
exotiques seront correctement importés). Cette option peut aussi être
utilisée avec l'option -n pour générer une liste de commande à corriger
et/ou adapter.
-U, -k, --update-data KEY
Au lieu de charger de nouvelles données, essayer de mettre à jour la
table. KEY est le nom de la colonne qui est utilisée comme clé. Toutes
les autres colonnes sont les nouvelles données à mettre à jour. Si
aucune ligne ne correspond à une clé donnée, la mise à jour pour cette
ligne est ignorée.
Note: utiliser les options -T et -U ensemble n'a pas de sens, mais -T
est quand même honoré.
-Z, --null-value VALUE
Avec les options -I et -U, considérer que NULL est représenté par la
chaine spécifiée. Par défaut, utiliser \N
-z, --null-is-empty
Avec les options -I et -U, considérer que NULL est représenté par la
chaine vide. Cette option est équivalente à -Z ''
-t, --types [DEFAULT_TYPE,]FIELD:TYPE,...
Spécifier pour chaque champ mentionné le type de donnée à forcer. Le
type 'auto' signifie que le type est autodétecté. C'est la valeur par
défaut. Les autres types valides sont 'str', 'int' et 'date'
Cette option est ignorée avec l'option -L
-A, --analyse
Analyser les données et afficher une requête pour créer une table qui
pourrait contenir ces données.
Cette option implique --fake et affiche simplement la commande SQL.
Pour lancer la commande SQL générée, il faut ajouter l'option --run
APRES cette option
~~~
-*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8:noeol:binary

112
doc/mysqlloadcsv.twp Normal file
View File

@ -0,0 +1,112 @@
# -*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8
##@creator: jclain
##@created: 27/04/2016 03:18
##@modifier: jclain
##@changecount: 1
##@tags:
##@title: mysqlloadcsv
{{{
mysqlloadcsv: Charger une table MySQL avec un fichier csv
USAGE
mysqlloadcsv [db.]table [fields...] [-- mysql options]
db est le nom de la base de données
table est le nom de la table à charger
fields est la liste des colonnes. Si cette valeur est spécifiée, il faudra
peut-être utiliser l'option -s pour ignorer le cas échéant la ligne des
en-têtes dans le fichier en entrée. Sinon, les colonnes à utiliser sont
calculées à partir du fichier en entrée.
Dans les données en entrées, qui doivent être en UTF8, les conversions suivantes
sont effectuées par MySQL:
\0 --> <caractère NUL>
\b --> <backspace>
\n --> <newline>
\r --> <carriage return>
\t --> <tab>
\Z --> Ctrl+Z
\N --> NULL
OPTIONS
-h, --host host
-P, --port port
-u, --user user
-ppassword
Informations de connexion à la base de données
-C, --config CONFIG
Prendre les informations de connexion depuis le fichier spécifié.
Le fichier doit être de la forme
host=HOST.TLD
#post=3306
user=USER
password=PASS
#dbtable=DB.TABLE
#fields=(FIELDS...)
# Il est possible aussi de spécifier DB et TABLE séparément:
#database=DB
#table=TABLE
Les variables port, dbtable et fields sont facultatives.
Les valeurs définies dans ce fichier sont prioritaires par rapport à
celles qui auraient été spécifiées sur la ligne de commande.
Utiliser password=--NOT-SET-- s'il faut se connecter sans mot de passe
Cette option peut être utilisée plusieurs fois, auquel cas les fichiers
sont chargés dans l'ordre.
--profile PROFILE
La variable $PROFILE est définie avec la valeur spécifiée avant de
sourcer les fichiers de configuration. Cela permet d'avoir des fichiers
de configuration qui calculent dynamiquement les paramètres en fonction
de la valeur du profil.
-f, --input INPUT
Fichier en entrée. Ne pas spécifier cette option ou utiliser '-' pour
lire depuis l'entrée standard.
-d, --auto-dbtable DB
Spécifier la base de données avec laquelle se connecter. De plus, si le
nom de la table n'est pas spécifié, prendre par défaut le nom de base du
fichier spécifié avec l'option -f
-s, --skip-lines NBLINES
Nombre de lignes à sauter dans le fichier en entrée
-n, --fake
Ne pas effectuer l'opération. Afficher simplement la commande SQL.
--run
Forcer le lancement de l'opération. Utiliser cette option avec -A pour
créer la table avec les paramètres analysés.
-T, --truncate
Vider la table avant d'effectuer le chargement
-L, --load-data
Charger les données avec la commande 'load data local'. C'est l'option
par défaut. Le fichier est transmis tel quel à MySQL.
-I, --insert-data
Charger les données en générant des commandes 'insert into'. L'effet est
en principe le même avec l'option -L (sauf que certains formats de date
exotiques seront correctement importés). Cette option peut aussi être
utilisée avec l'option -n pour générer une liste de commande à corriger
et/ou adapter.
-U, -k, --update-data KEY
Au lieu de charger de nouvelles données, essayer de mettre à jour la
table. KEY est le nom de la colonne qui est utilisée comme clé. Toutes
les autres colonnes sont les nouvelles données à mettre à jour. Si
aucune ligne ne correspond à une clé donnée, la mise à jour pour cette
ligne est ignorée.
Note: utiliser les options -T et -U ensemble n'a pas de sens, mais -T
est quand même honoré.
-Z, --null-value VALUE
Avec les options -I et -U, considérer que NULL est représenté par la
chaine spécifiée. Par défaut, utiliser \N
-z, --null-is-empty
Avec les options -I et -U, considérer que NULL est représenté par la
chaine vide. Cette option est équivalente à -Z ''
-t, --types [DEFAULT_TYPE,]FIELD:TYPE,...
Spécifier pour chaque champ mentionné le type de donnée à forcer. Le
type 'auto' signifie que le type est autodétecté. C'est la valeur par
défaut. Les autres types valides sont 'str', 'int' et 'date'
Cette option est ignorée avec l'option -L
-A, --analyse
Analyser les données et afficher une requête pour créer une table qui
pourrait contenir ces données.
Cette option implique --fake et affiche simplement la commande SQL.
Pour lancer la commande SQL générée, il faut ajouter l'option --run
APRES cette option
}}}

7
doc/noerr.md Normal file
View File

@ -0,0 +1,7 @@
# noerr
~~~
noerr: lancer une commande en supprimant la sortie d'erreur
~~~
-*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8:noeol:binary

11
doc/noerr.twp Normal file
View File

@ -0,0 +1,11 @@
# -*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8
##@creator: jclain
##@created: 27/04/2016 03:18
##@modifier: jclain
##@changecount: 1
##@tags:
##@title: noerr
{{{
noerr: lancer une commande en supprimant la sortie d'erreur
}}}

7
doc/noerror.md Normal file
View File

@ -0,0 +1,7 @@
# noerror
~~~
noerror: lancer une commande en masquant son code de retour. le code de retour est toujours 0
~~~
-*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8:noeol:binary

11
doc/noerror.twp Normal file
View File

@ -0,0 +1,11 @@
# -*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8
##@creator: jclain
##@created: 27/04/2016 03:18
##@modifier: jclain
##@changecount: 1
##@tags:
##@title: noerror
{{{
noerror: lancer une commande en masquant son code de retour. le code de retour est toujours 0
}}}

7
doc/noout.md Normal file
View File

@ -0,0 +1,7 @@
# noout
~~~
noout: lancer une commande en supprimant la sortie standard
~~~
-*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8:noeol:binary

11
doc/noout.twp Normal file
View File

@ -0,0 +1,11 @@
# -*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8
##@creator: jclain
##@created: 27/04/2016 03:18
##@modifier: jclain
##@changecount: 1
##@tags:
##@title: noout
{{{
noout: lancer une commande en supprimant la sortie standard
}}}

17829
doc/nutools.html Normal file

File diff suppressed because one or more lines are too long

34
doc/nutools.md Normal file
View File

@ -0,0 +1,34 @@
# nutools
~~~
nutools: configurer ou afficher des informations sur nutools
USAGE
nutools [VERSION]
OPTIONS
-C, --configure
Faire la configuration pour l'utilisateur courant en appelant uenv -u
Avec cette option, l'option -l (ou --local-profiles) est aussi reconnue
et est passée directement à uenv
-v, --version
Afficher la version de nutools installée. C'est l'option par défaut
-c, --check
Calculer si la version installée correspond à la version spécifiée
-o, --oper OPERATOR
Spécifier l'opérateur à utiliser avec l'option --check (par défaut,
utiliser l'opérateur ge, qui permet de vérifier si la version minimum
spécifiée est installée)
--eq
--ne
--lt
--le
--gt
--ge
--same
--diff
Ces options sont des raccourcis. L'option '--OP' est équivalente à
'--check --op OP'
~~~
-*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8:noeol:binary

38
doc/nutools.twp Normal file
View File

@ -0,0 +1,38 @@
# -*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8
##@creator: jclain
##@created: 27/04/2016 03:18
##@modifier: jclain
##@changecount: 1
##@tags:
##@title: nutools
{{{
nutools: configurer ou afficher des informations sur nutools
USAGE
nutools [VERSION]
OPTIONS
-C, --configure
Faire la configuration pour l'utilisateur courant en appelant uenv -u
Avec cette option, l'option -l (ou --local-profiles) est aussi reconnue
et est passée directement à uenv
-v, --version
Afficher la version de nutools installée. C'est l'option par défaut
-c, --check
Calculer si la version installée correspond à la version spécifiée
-o, --oper OPERATOR
Spécifier l'opérateur à utiliser avec l'option --check (par défaut,
utiliser l'opérateur ge, qui permet de vérifier si la version minimum
spécifiée est installée)
--eq
--ne
--lt
--le
--gt
--ge
--same
--diff
Ces options sont des raccourcis. L'option '--OP' est équivalente à
'--check --op OP'
}}}

10
doc/openurl.md Normal file
View File

@ -0,0 +1,10 @@
# openurl
~~~
openurl: Ouvrir une URL dans un navigateur
USAGE
openurl <file.url|file.desktop|URL>
~~~
-*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8:noeol:binary

86
doc/pdev.md Normal file
View File

@ -0,0 +1,86 @@
# pdev
~~~
pdev: basculer sur une branche de développement
USAGE
pdev [FEATURE [SOURCE]]
pdev -m|-l|-d [FEATURE]
- Vérifier l'existence de la branche develop. La créer si nécessaire en la
basant sur [origin/]master.
- Vérifier s'il n'y a pas de modifications locales. Sinon, proposer de faire un
commit ou un stash.
- Si FEATURE est spécifié, et si on n'est pas déjà sur cette branche, basculer
vers cette nouvelle branche. S'il s'agit d'une nouvelle branche, la baser sur
la branche SOURCE, qui vaut par défaut develop
- Si FEATURE n'est pas spécifié, basculer sur develop s'il s'agit de la seule
solution, sinon afficher un menu pour choisir la branche de destination.
OPTIONS
-C, --projdir PROJDIR
Spécifier le répertoire de base du projet qui est dans git. Par défaut,
on travaille dans le répertoire courant et on laisse git trouver le
répertoire de base du projet. Avec cette option, le répertoire courant
est modifié avant de lancer les commandes git.
-O, --origin ORIGIN
Spécifier le nom de l'origine. Par défaut, utiliser 'origin'
-o, --offline
En cas de création d'une branche, ne pas pousser vers l'origine; ne pas
tenter le cas échéant de traquer la branche dans l'origine; ne pas
supprimer une branche dans l'origine. Cette option est automatiquement
activée si la variable UTOOLS_VCS_OFFLINE est définie.
--online
Annuler l'effet de la variable UTOOLS_VCS_OFFLINE: forcer le mode online
--sync
Faire un certain nombre d'opération pour 'corriger' le dépôt local: pour
chacune des branches distantes, vérifier qu'il existe une branche locale
qui la traque, et pour chaque feature branche locale, vérifier qu'il
existe une branche distante associée. Cette option nécessite --online
-s, --squash COMMIT_MSG
Si la branche actuelle est une feature branch, la merger comme un seul
commit avec le message COMMIT_MSG dans develop puis la supprimer. Puis
basculer sur la branche develop.
Cette option ne devrait pas être utilisée avec -k, puisque bien que les
modifications soient mergées, la branche elle-même n'est pas considérée
comme mergée. Les résultats sont donc indéfinis si la branche est mergée
à plusieurs reprises.
-b, --rebase
Si la branche actuelle est une feature branch, lancer 'git rebase -i'
sur la feature branch. Cela permet de réordonner les commits pour
nettoyer l'historique avant de fusionner la branche avec -m
Cette option devrait le cas échéant être utilisée immédiatement avant -m
ou alors il faut forcer le push et communiquer avec l'équipe sur le fait
que la branche de feature a été rebasée.
-m, --merge
Si la branche actuelle est une feature branch, la merger dans develop
puis la supprimer. Puis basculer sur la branche develop.
--merge-log
Ajouter un résumé des modifications sur la feature branch en ajoutant le
log en une ligne de chaque commit dans le message du merge. Cette option
n'est en principe pas nécessaire puisque 'prel -um' intègre la liste des
commits dans CHANGES.txt
-k, --keep
Avec l'option -m, ne pas supprimer une feature branch après l'avoir
fusionnée dans develop. Cela permet d'intégrer les modifications petit à
petit.
--delete
Supprimer une feature branch, à condition qu'elle aie déjà été
entièrement fusionnée dans la branch develop
--force-delete
Supprimer une feature branch, même si elle n'a pas encore été fusionnée
dans la branche develop
-l, --log
-d, --diff
Afficher les modifications entre deux branches. L'option --log affiche
les modifications dans l'ordre alors que --diff affiche les différences
sous forme de diff. Les deux options peuvent être combinées et ont
l'effet de 'git log -p'
La branche comparée, s'il elle n'est pas spécifiée, est par défaut la
branche courante. S'il s'agit d'une feature branch, elle est comparée à
develop. S'il s'agit de la branche develop, elle est comparée à master.
~~~
-*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8:noeol:binary

90
doc/pdev.twp Normal file
View File

@ -0,0 +1,90 @@
# -*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8
##@creator: jclain
##@created: 27/04/2016 03:18
##@modifier: jclain
##@changecount: 1
##@tags:
##@title: pdev
{{{
pdev: basculer sur une branche de développement
USAGE
pdev [FEATURE [SOURCE]]
pdev -m|-l|-d [FEATURE]
- Vérifier l'existence de la branche develop. La créer si nécessaire en la
basant sur [origin/]master.
- Vérifier s'il n'y a pas de modifications locales. Sinon, proposer de faire un
commit ou un stash.
- Si FEATURE est spécifié, et si on n'est pas déjà sur cette branche, basculer
vers cette nouvelle branche. S'il s'agit d'une nouvelle branche, la baser sur
la branche SOURCE, qui vaut par défaut develop
- Si FEATURE n'est pas spécifié, basculer sur develop s'il s'agit de la seule
solution, sinon afficher un menu pour choisir la branche de destination.
OPTIONS
-C, --projdir PROJDIR
Spécifier le répertoire de base du projet qui est dans git. Par défaut,
on travaille dans le répertoire courant et on laisse git trouver le
répertoire de base du projet. Avec cette option, le répertoire courant
est modifié avant de lancer les commandes git.
-O, --origin ORIGIN
Spécifier le nom de l'origine. Par défaut, utiliser 'origin'
-o, --offline
En cas de création d'une branche, ne pas pousser vers l'origine; ne pas
tenter le cas échéant de traquer la branche dans l'origine; ne pas
supprimer une branche dans l'origine. Cette option est automatiquement
activée si la variable UTOOLS_VCS_OFFLINE est définie.
--online
Annuler l'effet de la variable UTOOLS_VCS_OFFLINE: forcer le mode online
--sync
Faire un certain nombre d'opération pour 'corriger' le dépôt local: pour
chacune des branches distantes, vérifier qu'il existe une branche locale
qui la traque, et pour chaque feature branche locale, vérifier qu'il
existe une branche distante associée. Cette option nécessite --online
-s, --squash COMMIT_MSG
Si la branche actuelle est une feature branch, la merger comme un seul
commit avec le message COMMIT_MSG dans develop puis la supprimer. Puis
basculer sur la branche develop.
Cette option ne devrait pas être utilisée avec -k, puisque bien que les
modifications soient mergées, la branche elle-même n'est pas considérée
comme mergée. Les résultats sont donc indéfinis si la branche est mergée
à plusieurs reprises.
-b, --rebase
Si la branche actuelle est une feature branch, lancer 'git rebase -i'
sur la feature branch. Cela permet de réordonner les commits pour
nettoyer l'historique avant de fusionner la branche avec -m
Cette option devrait le cas échéant être utilisée immédiatement avant -m
ou alors il faut forcer le push et communiquer avec l'équipe sur le fait
que la branche de feature a été rebasée.
-m, --merge
Si la branche actuelle est une feature branch, la merger dans develop
puis la supprimer. Puis basculer sur la branche develop.
--merge-log
Ajouter un résumé des modifications sur la feature branch en ajoutant le
log en une ligne de chaque commit dans le message du merge. Cette option
n'est en principe pas nécessaire puisque 'prel -um' intègre la liste des
commits dans CHANGES.txt
-k, --keep
Avec l'option -m, ne pas supprimer une feature branch après l'avoir
fusionnée dans develop. Cela permet d'intégrer les modifications petit à
petit.
--delete
Supprimer une feature branch, à condition qu'elle aie déjà été
entièrement fusionnée dans la branch develop
--force-delete
Supprimer une feature branch, même si elle n'a pas encore été fusionnée
dans la branche develop
-l, --log
-d, --diff
Afficher les modifications entre deux branches. L'option --log affiche
les modifications dans l'ordre alors que --diff affiche les différences
sous forme de diff. Les deux options peuvent être combinées et ont
l'effet de 'git log -p'
La branche comparée, s'il elle n'est pas spécifiée, est par défaut la
branche courante. S'il s'agit d'une feature branch, elle est comparée à
develop. S'il s'agit de la branche develop, elle est comparée à master.
}}}

101
doc/prel.md Normal file
View File

@ -0,0 +1,101 @@
# prel
~~~
prel: basculer sur une branche de release
USAGE
prel -u [SOURCE]
prel -c [RELEASE [SOURCE]]
prel -m|-l|-d [RELEASE]
- Vérifier s'il n'y a pas de modifications locales. Sinon, proposer de faire un
commit ou un stash.
- Avec l'option -c, s'il existe une branche de release, proposer de basculer
vers elle ou sur la branche master. Sinon, basculer sur la branche master.
- Avec l'option -u, proposer ou fixer une branche de release à créer. Si elle
existe déjà, basculer vers elle. Sinon, la créer en la basant sur SOURCE, qui
vaut par défaut develop
OPTIONS
-C, --projdir PROJDIR
Spécifier le répertoire de base du projet qui est dans git. Par défaut,
on travaille dans le répertoire courant et on laisse git trouver le
répertoire de base du projet. Avec cette option, le répertoire courant
est modifié avant de lancer les commandes git.
-O, --origin ORIGIN
Spécifier le nom de l'origine. Par défaut, utiliser 'origin'
-o, --offline
En cas de création d'une branche, ne pas pousser vers l'origine; ne pas
tenter le cas échéant de traquer la branche dans l'origine; ne pas
supprimer une branche dans l'origine. Cette option est automatiquement
activée si la variable UTOOLS_VCS_OFFLINE est définie.
--online
Annuler l'effet de la variable UTOOLS_VCS_OFFLINE: forcer le mode online
-c, --checkout
Basculer vers une branche de release existante. C'est l'option par
défaut. Si aucune branche de release n'existe, basculer vers master
-u, --update
Préparer une nouvelle release. Utiliser une des options -x, -z ou -p
pour spécifier le type de release à préparer. Si la branche qui serait
créée pour le type de release existe déjà, basculer vers cette branche.
S'il faut la créer, la baser sur la branche SOURCE, qui vaut par défaut
develop
--menu
-x, --major
-z, --minor
-p, --patchlevel
Utilisé avec l'option -u, soit afficher un menu pour choisir la version
de la nouvelle release (par défaut), soit préparer respectivement une
release majeure, mineure, ou pour correction de bug.
-v-OPT
Avec l'option -u, spécifier une option de pver permettant de choisir la
version de la nouvelle release. Les options supportées sont -v, -l, -a,
-b, -r et -R. Par exemple, si la version actuelle sur la branche master
est 0.2.3, les options '-uz -v-lbeta' permettent de préparer la release
0.3.0-beta
En principe, cette option n'a pas à être utilisée, puisque dans une
branche de release, on peut faire vivre les versions de pré-release
jusqu'à la release finale. Ainsi, la branche de release est nommée
d'après la version finale, mais le projet peut recevoir une version de
pré-release incrémentale.
-w, --write
Si une nouvelle branche est créée avec -u, mettre à jour le fichier
VERSION.txt avec pver. C'est l'option par défaut.
-n, --no-write
Si une nouvelle branche est créée avec -u, NE PAS mettre à jour le
fichier VERSION.txt avec pver. Utiliser cette option si la mise à jour
du numéro de version doit être faite d'une manière particulière.
-e, --edit
Editer le fichier CHANGES.txt autogénéré par -u -w
Cette option est surtout utile si -m est utilisé avec -u, pour donner la
possibilité de corriger la liste des modifications avant leur
enregistrement définitif.
-m, --merge
Si la branche actuelle est une branche de release, ou s'il existe une
branche de release, la merger dans master, puis dans develop, puis la
supprimer. Puis basculer sur la branche master.
S'il n'existe pas de branche de release, proposer de fusionner les
modifications de la branche develop dans la branche master, sans
préparer de branche de release au préalable.
--delete
Supprimer une branche de release, à condition qu'elle aie déjà été
entièrement fusionnée dans la branch master
--force-delete
Supprimer une branche de release, même si elle n'a pas encore été
fusionnée dans la branche master
-s, --summary
Afficher la liste des différences entre la branche develop et la branche
master, comme elle serait générée par les options -u -w pour le fichier
CHANGES.txt
-l, --log
Afficher les modifications actuellement effectuée dans la branche de
release par rapport à develop.
-d, --diff
Afficher les modifications actuellement effectuée dans la branche de
release par rapport à develop, sous forme de diff.
~~~
-*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8:noeol:binary

105
doc/prel.twp Normal file
View File

@ -0,0 +1,105 @@
# -*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8
##@creator: jclain
##@created: 27/04/2016 03:18
##@modifier: jclain
##@changecount: 1
##@tags:
##@title: prel
{{{
prel: basculer sur une branche de release
USAGE
prel -u [SOURCE]
prel -c [RELEASE [SOURCE]]
prel -m|-l|-d [RELEASE]
- Vérifier s'il n'y a pas de modifications locales. Sinon, proposer de faire un
commit ou un stash.
- Avec l'option -c, s'il existe une branche de release, proposer de basculer
vers elle ou sur la branche master. Sinon, basculer sur la branche master.
- Avec l'option -u, proposer ou fixer une branche de release à créer. Si elle
existe déjà, basculer vers elle. Sinon, la créer en la basant sur SOURCE, qui
vaut par défaut develop
OPTIONS
-C, --projdir PROJDIR
Spécifier le répertoire de base du projet qui est dans git. Par défaut,
on travaille dans le répertoire courant et on laisse git trouver le
répertoire de base du projet. Avec cette option, le répertoire courant
est modifié avant de lancer les commandes git.
-O, --origin ORIGIN
Spécifier le nom de l'origine. Par défaut, utiliser 'origin'
-o, --offline
En cas de création d'une branche, ne pas pousser vers l'origine; ne pas
tenter le cas échéant de traquer la branche dans l'origine; ne pas
supprimer une branche dans l'origine. Cette option est automatiquement
activée si la variable UTOOLS_VCS_OFFLINE est définie.
--online
Annuler l'effet de la variable UTOOLS_VCS_OFFLINE: forcer le mode online
-c, --checkout
Basculer vers une branche de release existante. C'est l'option par
défaut. Si aucune branche de release n'existe, basculer vers master
-u, --update
Préparer une nouvelle release. Utiliser une des options -x, -z ou -p
pour spécifier le type de release à préparer. Si la branche qui serait
créée pour le type de release existe déjà, basculer vers cette branche.
S'il faut la créer, la baser sur la branche SOURCE, qui vaut par défaut
develop
--menu
-x, --major
-z, --minor
-p, --patchlevel
Utilisé avec l'option -u, soit afficher un menu pour choisir la version
de la nouvelle release (par défaut), soit préparer respectivement une
release majeure, mineure, ou pour correction de bug.
-v-OPT
Avec l'option -u, spécifier une option de pver permettant de choisir la
version de la nouvelle release. Les options supportées sont -v, -l, -a,
-b, -r et -R. Par exemple, si la version actuelle sur la branche master
est 0.2.3, les options '-uz -v-lbeta' permettent de préparer la release
0.3.0-beta
En principe, cette option n'a pas à être utilisée, puisque dans une
branche de release, on peut faire vivre les versions de pré-release
jusqu'à la release finale. Ainsi, la branche de release est nommée
d'après la version finale, mais le projet peut recevoir une version de
pré-release incrémentale.
-w, --write
Si une nouvelle branche est créée avec -u, mettre à jour le fichier
VERSION.txt avec pver. C'est l'option par défaut.
-n, --no-write
Si une nouvelle branche est créée avec -u, NE PAS mettre à jour le
fichier VERSION.txt avec pver. Utiliser cette option si la mise à jour
du numéro de version doit être faite d'une manière particulière.
-e, --edit
Editer le fichier CHANGES.txt autogénéré par -u -w
Cette option est surtout utile si -m est utilisé avec -u, pour donner la
possibilité de corriger la liste des modifications avant leur
enregistrement définitif.
-m, --merge
Si la branche actuelle est une branche de release, ou s'il existe une
branche de release, la merger dans master, puis dans develop, puis la
supprimer. Puis basculer sur la branche master.
S'il n'existe pas de branche de release, proposer de fusionner les
modifications de la branche develop dans la branche master, sans
préparer de branche de release au préalable.
--delete
Supprimer une branche de release, à condition qu'elle aie déjà été
entièrement fusionnée dans la branch master
--force-delete
Supprimer une branche de release, même si elle n'a pas encore été
fusionnée dans la branche master
-s, --summary
Afficher la liste des différences entre la branche develop et la branche
master, comme elle serait générée par les options -u -w pour le fichier
CHANGES.txt
-l, --log
Afficher les modifications actuellement effectuée dans la branche de
release par rapport à develop.
-d, --diff
Afficher les modifications actuellement effectuée dans la branche de
release par rapport à develop, sous forme de diff.
}}}

98
doc/pver.md Normal file
View File

@ -0,0 +1,98 @@
# pver
~~~
pver: gérer des numéros de version selon les règles du versionage sémantique v2.0.0 (http://semver.org/)
USAGE
pver [options]
OPTIONS
-f, --file VERSIONFILE
Gérer le numéro de version se trouvant dans le fichier spécifié. Le
fichier est créé si nécessaire. C'est l'option par défaut si un fichier
nommé VERSION.txt se trouve dans le répertoire courant.
-e, --maven POMFILE
Gérer le numéro de version se trouvant dans le fichier pom.xml spécifié.
Le fichier DOIT exister. C'est l'option par défaut si un fichier nommé
pom.xml se trouve dans le répertoire courant.
-F, --file-string VERSIONFILE
Prendre pour valeur de départ le contenu du fichier VERSIONFILE (qui
vaut par défaut VERSION.txt)
-g, --git-string [branch:]VERSIONFILE
Prendre pour valeur de départ le contenu du fichier VERSIONFILE (qui
vaut par défaut VERSION.txt) dans la branche BRANCH (qui vaut par défaut
master) du dépôt git situé dans le répertoire courant.
-s, --string VERSION
Prendre pour valeur de départ le numéro de version spécifié
--show
Afficher le numéro de version. C'est l'action par défaut
--allow-empty
Supporter que la version puisse ne pas être spécifiée ni trouvée. Dans
ce cas, ne pas assumer que la version effective est 0.0.0
Avec --show et --update, ne rien afficher si la version est vide.
--check
Vérifier que le numéro de version est conforme aux règles du versionage
sémantique
--convert
--no-convert
Activer (resp. désactiver) la conversion automatique. Par défaut, si la
version est au format classique 'x.z[.p]-rDD/MM/YYYY', elle est
convertie automatiquement au format sémantique x.z.p+rYYYYMMDD
--eq VERSION
--ne VERSION
--lt VERSION
--le VERSION
--gt VERSION
--ge VERSION
--same VERSION
--diff VERSION
Comparer avec la version spécifiée. Les opérateurs --eq, --ne, --lt,
--le, --gt, et --ge ignorent l'identifiant de build (comme le demande la
règle du versionage sémantique). Les opérateurs --same et --diff
comparent aussi les identifiants de build.
-v, --set-version VERSION
Spécifier un nouveau numéro de version qui écrase la valeur actuelle.
Cette option ne devrait pas être utilisée en temps normal parce que cela
va contre les règles du versionage sémantique.
--prel
Spécifier un nouveau numéro de version qui écrase la valeur actuelle. Le
numéro de version est obtenu à partir du nom de la branche git courante,
qui doit être de la forme release-VERSION
-u, --update
Mettre à jour le numéro de version.
--menu
Afficher un menu permettant de choisir le composant de la version à
incrémenter
-x, --major
Augmenter le numéro de version majeure
-z, --minor
Augmenter le numéro de version mineure. C'est la valeur par défaut.
-p, --patchlevel
Augmenter le numéro de patch
-l, --prelease ID
Spécifier un identifiant de pré-release, à ajouter au numéro de version.
-a, --alpha
-b, --beta
-r, --rc
Spécifier une pré-release de type alpha, beta, ou rc. Si la version est
déjà dans ce type, augmenter la dernière valeur numérique des composants
de l'identifiant, e.g. alpha deviant alpha.1, beta-1.2 devient beta-1.3,
rc1 devient rc2
XXX ces fonctions ne sont pas encore implémentées
-R, --final, --release
Supprimer l'identifiant de prérelease
-m, --metadata ID
Spécifier un identifiant de build, à ajouter au numéro de version.
-M, --vcs-metadata
Spécifier l'identifiant à partir de la révision actuelle dans le
gestionnaire de version. Note: pour le moment, seul git est supporté.
--add-metadata ID
Ajouter l'identifiant spécifié à la valeur actuelle, au lieu de la
remplacer. Séparer l'identifiant de la valeur précédente avec un '.'
~~~
-*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8:noeol:binary

102
doc/pver.twp Normal file
View File

@ -0,0 +1,102 @@
# -*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8
##@creator: jclain
##@created: 27/04/2016 03:18
##@modifier: jclain
##@changecount: 1
##@tags:
##@title: pver
{{{
pver: gérer des numéros de version selon les règles du versionage sémantique v2.0.0 (http://semver.org/)
USAGE
pver [options]
OPTIONS
-f, --file VERSIONFILE
Gérer le numéro de version se trouvant dans le fichier spécifié. Le
fichier est créé si nécessaire. C'est l'option par défaut si un fichier
nommé VERSION.txt se trouve dans le répertoire courant.
-e, --maven POMFILE
Gérer le numéro de version se trouvant dans le fichier pom.xml spécifié.
Le fichier DOIT exister. C'est l'option par défaut si un fichier nommé
pom.xml se trouve dans le répertoire courant.
-F, --file-string VERSIONFILE
Prendre pour valeur de départ le contenu du fichier VERSIONFILE (qui
vaut par défaut VERSION.txt)
-g, --git-string [branch:]VERSIONFILE
Prendre pour valeur de départ le contenu du fichier VERSIONFILE (qui
vaut par défaut VERSION.txt) dans la branche BRANCH (qui vaut par défaut
master) du dépôt git situé dans le répertoire courant.
-s, --string VERSION
Prendre pour valeur de départ le numéro de version spécifié
--show
Afficher le numéro de version. C'est l'action par défaut
--allow-empty
Supporter que la version puisse ne pas être spécifiée ni trouvée. Dans
ce cas, ne pas assumer que la version effective est 0.0.0
Avec --show et --update, ne rien afficher si la version est vide.
--check
Vérifier que le numéro de version est conforme aux règles du versionage
sémantique
--convert
--no-convert
Activer (resp. désactiver) la conversion automatique. Par défaut, si la
version est au format classique 'x.z[.p]-rDD/MM/YYYY', elle est
convertie automatiquement au format sémantique x.z.p+rYYYYMMDD
--eq VERSION
--ne VERSION
--lt VERSION
--le VERSION
--gt VERSION
--ge VERSION
--same VERSION
--diff VERSION
Comparer avec la version spécifiée. Les opérateurs --eq, --ne, --lt,
--le, --gt, et --ge ignorent l'identifiant de build (comme le demande la
règle du versionage sémantique). Les opérateurs --same et --diff
comparent aussi les identifiants de build.
-v, --set-version VERSION
Spécifier un nouveau numéro de version qui écrase la valeur actuelle.
Cette option ne devrait pas être utilisée en temps normal parce que cela
va contre les règles du versionage sémantique.
--prel
Spécifier un nouveau numéro de version qui écrase la valeur actuelle. Le
numéro de version est obtenu à partir du nom de la branche git courante,
qui doit être de la forme release-VERSION
-u, --update
Mettre à jour le numéro de version.
--menu
Afficher un menu permettant de choisir le composant de la version à
incrémenter
-x, --major
Augmenter le numéro de version majeure
-z, --minor
Augmenter le numéro de version mineure. C'est la valeur par défaut.
-p, --patchlevel
Augmenter le numéro de patch
-l, --prelease ID
Spécifier un identifiant de pré-release, à ajouter au numéro de version.
-a, --alpha
-b, --beta
-r, --rc
Spécifier une pré-release de type alpha, beta, ou rc. Si la version est
déjà dans ce type, augmenter la dernière valeur numérique des composants
de l'identifiant, e.g. alpha deviant alpha.1, beta-1.2 devient beta-1.3,
rc1 devient rc2
XXX ces fonctions ne sont pas encore implémentées
-R, --final, --release
Supprimer l'identifiant de prérelease
-m, --metadata ID
Spécifier un identifiant de build, à ajouter au numéro de version.
-M, --vcs-metadata
Spécifier l'identifiant à partir de la révision actuelle dans le
gestionnaire de version. Note: pour le moment, seul git est supporté.
--add-metadata ID
Ajouter l'identifiant spécifié à la valeur actuelle, au lieu de la
remplacer. Séparer l'identifiant de la valeur précédente avec un '.'
}}}

20
doc/pz.md Normal file
View File

@ -0,0 +1,20 @@
# pz
~~~
pz: faire une archive du projet
USAGE
pz
OPTIONS
-C, --projdir PROJDIR
Spécifier le répertoire de base du projet qui est dans git. Par défaut,
on travaille dans le répertoire courant et on laisse git trouver le
répertoire de base du projet. Avec cette option, le répertoire courant
est modifié avant de lancer les commandes git.
-d, --destdir DESTDIR
Spécifier le répertoire dans lequel générer l'archive. Par défaut,
prendre le répertoire parent du répertoire de base du dépôt.
~~~
-*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8:noeol:binary

24
doc/pz.twp Normal file
View File

@ -0,0 +1,24 @@
# -*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8
##@creator: jclain
##@created: 27/04/2016 03:18
##@modifier: jclain
##@changecount: 1
##@tags:
##@title: pz
{{{
pz: faire une archive du projet
USAGE
pz
OPTIONS
-C, --projdir PROJDIR
Spécifier le répertoire de base du projet qui est dans git. Par défaut,
on travaille dans le répertoire courant et on laisse git trouver le
répertoire de base du projet. Avec cette option, le répertoire courant
est modifié avant de lancer les commandes git.
-d, --destdir DESTDIR
Spécifier le répertoire dans lequel générer l'archive. Par défaut,
prendre le répertoire parent du répertoire de base du dépôt.
}}}

16
doc/reptyr.cgo.md Normal file
View File

@ -0,0 +1,16 @@
# reptyr.cgo
~~~
Usage: reptyr [-s] PID
reptyr -l|-L [COMMAND [ARGS]]
-l Create a new pty pair and print the name of the slave.
if there are command-line arguments after -l
they are executed with REPTYR_PTY set to path of pty.
-L Like '-l', but also redirect the child's stdio to the slave.
-s Attach fds 0-2 on the target, even if it is not attached to a tty.
-h Print this help message and exit.
-v Print the version number and exit.
-V Print verbose debug output.
~~~
-*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8:noeol:binary

20
doc/reptyr.cgo.twp Normal file
View File

@ -0,0 +1,20 @@
# -*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8
##@creator: jclain
##@created: 27/04/2016 03:18
##@modifier: jclain
##@changecount: 1
##@tags:
##@title: reptyr.cgo
{{{
Usage: reptyr [-s] PID
reptyr -l|-L [COMMAND [ARGS]]
-l Create a new pty pair and print the name of the slave.
if there are command-line arguments after -l
they are executed with REPTYR_PTY set to path of pty.
-L Like '-l', but also redirect the child's stdio to the slave.
-s Attach fds 0-2 on the target, even if it is not attached to a tty.
-h Print this help message and exit.
-v Print the version number and exit.
-V Print verbose debug output.
}}}

12
doc/rmtildes.md Normal file
View File

@ -0,0 +1,12 @@
# rmtildes
~~~
rmtildes: supprimer les fichiers *~ dans le répertoire courant
USAGE
rmtildes [dir [glob]]
Par défaut, dir==. et glob==*~
~~~
-*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8:noeol:binary

74
doc/rruns.md Normal file
View File

@ -0,0 +1,74 @@
# rruns
~~~
rruns: Déploiement distant avec runs
USAGE
rruns [-h hosts] [-T tmproot] rscriptname name=value...
rruns [-h hosts] [-T tmproot] @recipe name=value...
rruns [-h hosts] [-T tmproot] -f rscript name=value...
rruns [-h hosts] [-T tmproot] -r recipe name=value...
Lancer ce script sans argument (hors options) est équivalent à le lancer avec
l'argument @default
OPTIONS
-C Ne pas faire le déploiement. Configurer uniquement la connexion par clé
sur les hôtes distants spécifiés pour le user spécifié. Il faut pouvoir
se connecter par mot de passe pour configurer la connexion par clé.
Si l'on veut configurer la connexion par clé pour le user root, mais que
ce n'est pas possible de se connecter par mot de passe avec le user root
sur l'hôte distant, et qu'il existe un user sudoer sur l'hôte distant,
il est possible de faire la configuration avec '--configure root'. La
commande serait alors
rruns -h user@host --configure root
-T tmproot
Spécifier le répertoire temporaire sur l'hôte distant, comme par exemple
/var/tmp. Cette option est utile pour les vservers, qui ont par défaut
un /tmp minuscule de 16 Mo.
-S ssh
Spécifier le programme à utiliser pour la connection par ssh.
-h host
-h @hostsfile
Spécifier un ou plusieurs hôtes sur lequels faire le déploiement. Pour
spécifier plusieurs hôtes, il est possible d'utiliser plusieurs fois
l'option -h, ou spécifier en une seule fois plusieurs hôtes en les
séparant par un espace ou le caractère ':', e.g. 'host1 host2' ou
'host1:host2'. Si la spécification contient les caractères { et },
l'expansion est effectuée, e.g
-h 'root@{host1,host2}.univ.run'
Par défaut, la connexion sur l'hôte distant se fait avec l'utilisateur
root. Il est possible de spécifier un autre utilisateur avec la syntaxe
user@host, e.g -h user@host
La forme @hostsfile permet de lire la liste des hôtes depuis le fichier
hostsfile, à raison d'un hôte par ligne.
Si cette option n'est pas spécifiée, et que le répertoire courant est
dans un des répertoires de $RUNSHOSTSPATH, sélectionner l'hôte
correspondant. Sinon, l'utilisateur doit saisir l'hôte distant de façon
interactive.
-f RSCRIPT
Lancer le script individuel spécifié au lieu de chercher dans les
répertoires $RUNS{SCRIPTS,HOSTS}PATH
-r RECIPE
Lancer les scripts spécifiés dans le fichier de recettes individuel
spécifié.
-z Forcer la réinstallation des scripts qui se basent sur shouldrun/setdone
-o OUTPUT
Générer l'archive à lancer sur l'hôte distant au lieu de faire le
déploiement. Si plusieurs hôtes sont spécifiés, OUTPUT est considéré
comme un nom de base auquel est ajouté le nom de l'hôte sur lequel
l'archive doit être déployée.
--init
--no-init
Forcer (resp. empêcher) la création des répertoires d'hôte correspondant
aux hôtes spécifiés. Par défaut, la création des répertoires d'hôte est
effectuée uniquement si ce script est lancé sans argument.
--sysinfos
Après un déploiement réussi sur l'hôte distant, inscrire si ce n'est
déjà fait le résultat de la commande usysinfos dans le fichier
sysinfos.conf du répertoire d'hôte.
Cette option est automatiquement activée si ce script est lancé sans
argument (hors options).
~~~
-*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8:noeol:binary

View File

@ -1,6 +1,6 @@
# -*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8
##@creator: jclain
##@created: 30/03/2012 04:42
##@created: 27/04/2016 03:18
##@modifier: jclain
##@changecount: 1
##@tags:
@ -10,10 +10,10 @@
rruns: Déploiement distant avec runs
USAGE
rruns [-H host] [-T tmproot] rscriptname name=value...
rruns [-H host] [-T tmproot] @recipe name=value...
rruns [-H host] [-T tmproot] -f rscript name=value...
rruns [-H host] [-T tmproot] -r recipe name=value...
rruns [-h hosts] [-T tmproot] rscriptname name=value...
rruns [-h hosts] [-T tmproot] @recipe name=value...
rruns [-h hosts] [-T tmproot] -f rscript name=value...
rruns [-h hosts] [-T tmproot] -r recipe name=value...
Lancer ce script sans argument (hors options) est équivalent à le lancer avec
l'argument @default
@ -27,20 +27,31 @@ OPTIONS
sur l'hôte distant, et qu'il existe un user sudoer sur l'hôte distant,
il est possible de faire la configuration avec '--configure root'. La
commande serait alors
rruns -H user@host --configure root
rruns -h user@host --configure root
-T tmproot
Spécifier le répertoire temporaire sur l'hôte distant, comme par exemple
/var/tmp. Cette option est utile pour les vservers, qui ont par défaut
un /tmp minuscule de 16 Mo.
-S ssh
Spécifier le programme à utiliser pour la connection par ssh.
-H host
Spécifier un hôte distant sur lequel faire le déploiement. Plusieurs
options -H peuvent être spécifiées, ou alors on peut séparer plusieurs
hôtes par ':', e.g. -H host1:host2
-h host
-h @hostsfile
Spécifier un ou plusieurs hôtes sur lequels faire le déploiement. Pour
spécifier plusieurs hôtes, il est possible d'utiliser plusieurs fois
l'option -h, ou spécifier en une seule fois plusieurs hôtes en les
séparant par un espace ou le caractère ':', e.g. 'host1 host2' ou
'host1:host2'. Si la spécification contient les caractères { et },
l'expansion est effectuée, e.g
-h 'root@{host1,host2}.univ.run'
Par défaut, la connexion sur l'hôte distant se fait avec l'utilisateur
root. Il est possible de spécifier un autre utilisateur avec la syntaxe
user@host, e.g -H jclain@host
user@host, e.g -h user@host
La forme @hostsfile permet de lire la liste des hôtes depuis le fichier
hostsfile, à raison d'un hôte par ligne.
Si cette option n'est pas spécifiée, et que le répertoire courant est
dans un des répertoires de $RUNSHOSTSPATH, sélectionner l'hôte
correspondant. Sinon, l'utilisateur doit saisir l'hôte distant de façon
interactive.
-f RSCRIPT
Lancer le script individuel spécifié au lieu de chercher dans les
répertoires $RUNS{SCRIPTS,HOSTS}PATH
@ -53,6 +64,11 @@ OPTIONS
déploiement. Si plusieurs hôtes sont spécifiés, OUTPUT est considéré
comme un nom de base auquel est ajouté le nom de l'hôte sur lequel
l'archive doit être déployée.
--init
--no-init
Forcer (resp. empêcher) la création des répertoires d'hôte correspondant
aux hôtes spécifiés. Par défaut, la création des répertoires d'hôte est
effectuée uniquement si ce script est lancé sans argument.
--sysinfos
Après un déploiement réussi sur l'hôte distant, inscrire si ce n'est
déjà fait le résultat de la commande usysinfos dans le fichier

48
doc/ruinst.md Normal file
View File

@ -0,0 +1,48 @@
# ruinst
~~~
ruinst: Déploiement distant avec uinst
USAGE
ruinst [-h host] [-T tmproot] <file|archive|dir> [-- options de uinst]
note: à cause d'une limitation de makeself, les options de uinst ne devraient
pas contenir d'espaces ni de caractères spéciaux. L'échappement de ces
caractères n'est pas garanti.
OPTIONS
-C Ne pas faire le déploiement. Configurer uniquement la connexion par clé
sur les hôtes distants spécifiés pour le user spécifié. Il faut pouvoir
se connecter par mot de passe pour configurer la connexion par clé.
Si l'on veut configurer la connexion par clé pour le user root, mais que
ce n'est pas possible de se connecter par mot de passe avec le user root
sur l'hôte distant, et qu'il existe un user sudoer sur l'hôte distant,
il est possible de faire la configuration avec '--configure root'. La
commande serait alors
ruinst -h user@host --configure root
Si l'hôte distant n'a pas sudo ou si sudo n'est pas configuré, il faut
rajouter l'option --uses-su, e.g:
ruinst -h user@host --configure root --uses-su
-T tmproot
Spécifier le répertoire temporaire sur l'hôte distant, comme par exemple
/var/tmp. Cette option est utile pour les vservers, qui ont par défaut
un /tmp minuscule de 16 Mo.
-S, --ssh ssh
Spécifier le programme à utiliser pour la connection par ssh.
-h hosts
-h @hostsfile
Spécifier un ou plusieurs hôtes sur lequels faire le déploiement. Pour
spécifier plusieurs hôtes, il est possible d'utiliser plusieurs fois
l'option -h, ou spécifier en une seule fois plusieurs hôtes en les
séparant par un espace ou le caractère ':', e.g. 'host1 host2' ou
'host1:host2'. Si la spécification contient les caractères { et },
l'expansion est effectuée, e.g
-h 'root@{host1,host2}.univ.run'
Par défaut, la connexion sur l'hôte distant se fait avec l'utilisateur
root. Il est possible de spécifier un autre utilisateur avec la syntaxe
user@host, e.g -h user@host
La forme @hostsfile permet de lire la liste des hôtes depuis le fichier
hostsfile, à raison d'un hôte par ligne.
~~~
-*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8:noeol:binary

View File

@ -1,6 +1,6 @@
# -*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8
##@creator: jclain
##@created: 15/03/2012 22:20
##@created: 27/04/2016 03:18
##@modifier: jclain
##@changecount: 1
##@tags:
@ -10,7 +10,11 @@
ruinst: Déploiement distant avec uinst
USAGE
ruinst [-H host] [-T tmproot] <file|archive|dir> [-- options de uinst]
ruinst [-h host] [-T tmproot] <file|archive|dir> [-- options de uinst]
note: à cause d'une limitation de makeself, les options de uinst ne devraient
pas contenir d'espaces ni de caractères spéciaux. L'échappement de ces
caractères n'est pas garanti.
OPTIONS
-C Ne pas faire le déploiement. Configurer uniquement la connexion par clé
@ -21,18 +25,28 @@ OPTIONS
sur l'hôte distant, et qu'il existe un user sudoer sur l'hôte distant,
il est possible de faire la configuration avec '--configure root'. La
commande serait alors
ruinst -H user@host --configure root
ruinst -h user@host --configure root
Si l'hôte distant n'a pas sudo ou si sudo n'est pas configuré, il faut
rajouter l'option --uses-su, e.g:
ruinst -h user@host --configure root --uses-su
-T tmproot
Spécifier le répertoire temporaire sur l'hôte distant, comme par exemple
/var/tmp. Cette option est utile pour les vservers, qui ont par défaut
un /tmp minuscule de 16 Mo.
-S ssh
-S, --ssh ssh
Spécifier le programme à utiliser pour la connection par ssh.
-H host
Spécifier un hôte distant sur lequel faire le déploiement. Plusieurs
options -H peuvent être spécifiées, ou alors on peut séparer plusieurs
hôtes par ':', e.g. -H host1:host2
-h hosts
-h @hostsfile
Spécifier un ou plusieurs hôtes sur lequels faire le déploiement. Pour
spécifier plusieurs hôtes, il est possible d'utiliser plusieurs fois
l'option -h, ou spécifier en une seule fois plusieurs hôtes en les
séparant par un espace ou le caractère ':', e.g. 'host1 host2' ou
'host1:host2'. Si la spécification contient les caractères { et },
l'expansion est effectuée, e.g
-h 'root@{host1,host2}.univ.run'
Par défaut, la connexion sur l'hôte distant se fait avec l'utilisateur
root. Il est possible de spécifier un autre utilisateur avec la syntaxe
user@host, e.g -H user@host
user@host, e.g -h user@host
La forme @hostsfile permet de lire la liste des hôtes depuis le fichier
hostsfile, à raison d'un hôte par ligne.
}}}

14
doc/rumount.md Normal file
View File

@ -0,0 +1,14 @@
# rumount
~~~
rumount: démonter un système de fichier récursivement
USAGE
rumount mountpoint
Démonter tous les systèmes de fichiers qui sont montés en-dessous de mountpoint
puis démonter mountpoint. Démonter aussi tous les systèmes de fichiers
bind-montés à partir d'un sous-répertoire de mountpoint.
~~~
-*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8:noeol:binary

18
doc/rumount.twp Normal file
View File

@ -0,0 +1,18 @@
# -*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8
##@creator: jclain
##@created: 27/04/2016 03:18
##@modifier: jclain
##@changecount: 1
##@tags:
##@title: rumount
{{{
rumount: démonter un système de fichier récursivement
USAGE
rumount mountpoint
Démonter tous les systèmes de fichiers qui sont montés en-dessous de mountpoint
puis démonter mountpoint. Démonter aussi tous les systèmes de fichiers
bind-montés à partir d'un sous-répertoire de mountpoint.
}}}

58
doc/runs.md Normal file
View File

@ -0,0 +1,58 @@
# runs
~~~
runs: Lancer un script avec le protocole runs
USAGE
runs [options] rscriptname name=value...
runs [options] @recipe name=value...
runs [options] -f rscript name=value...
runs [options] -r recipe name=value...
OPTIONS
Configuration
--init
--verify
Vérifier le nom d'hôte et créer si nécessaire le répertoire d'hôte
correspondant à l'hôte courant ou à l'hôte spécifié avec l'option -h
Avec --verify, la création du répertoire d'hôte n'est pas effectuée.
--sysinfos DATA
Avec l'option --init, initialiser le fichier sysinfos.conf avec DATA, si
le fichier n'a pas déjà été provisionné. Sans cette option, un fichier
vide avec des commentaires est créé à la place.
--create RSCRIPT
Créer un modèle de script avec le nom donné.
Avec l'option -h, le script est créé dans le répertoire d'hôte
correspondant à l'hôte spécifié
Gestion des scripts
-s Forcer l'exécution du script avec l'utilisateur root si ce n'est pas
déjà le cas
-f RSCRIPT
Lancer le script individuel spécifié au lieu de chercher dans les
répertoires de $RUNSSCRIPTSPATH
-r RECIPE
Lancer les scripts spécifiés dans le fichier de recettes individuel
spécifié.
-h HOSTNAME[.DOMAIN]
Spécifier que les scripts sont destinés à être lancés sur l'hôte
spécifié. Les scripts sont alors aussi cherchés dans les répertoires
{$RUNSHOSTSPATH}/$hostname.$domain (par défaut) et
{$RUNSHOSTSPATH}/$domain/$hostname (le cas échéant)
L'option --host est équivalente, sauf que son argument est facultatif et
que sa valeur par défaut est l'hôte courant, soit sulfure
--list
Afficher la liste des scripts qui sont disponibles. Avec l'option -h,
inclure aussi les scripts spécifiques à cet hôte.
Avec cette option, les arguments supplémentaires agissent comme des
filtres (regexp utilisée avec l'opérateur == de la commande [[). Les
noms des scripts doivent valider au moins un filtre.
--info
Afficher la la description du script et la valeur de chaque variable
définies
--desc-only
Afficher seulement la description du script
-z Forcer la réinstallation des scripts qui se basent sur shouldrun/setdone
~~~
-*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8:noeol:binary

View File

@ -1,6 +1,6 @@
# -*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8
##@creator: jclain
##@created: 30/03/2012 04:42
##@created: 27/04/2016 03:19
##@modifier: jclain
##@changecount: 1
##@tags:
@ -18,8 +18,10 @@ USAGE
OPTIONS
Configuration
--init
Créer le répertoire d'hôte correspondant à l'hôte courant ou à l'hôte
spécifié avec l'option -h
--verify
Vérifier le nom d'hôte et créer si nécessaire le répertoire d'hôte
correspondant à l'hôte courant ou à l'hôte spécifié avec l'option -h
Avec --verify, la création du répertoire d'hôte n'est pas effectuée.
--sysinfos DATA
Avec l'option --init, initialiser le fichier sysinfos.conf avec DATA, si
le fichier n'a pas déjà été provisionné. Sans cette option, un fichier
@ -44,7 +46,7 @@ Gestion des scripts
{$RUNSHOSTSPATH}/$hostname.$domain (par défaut) et
{$RUNSHOSTSPATH}/$domain/$hostname (le cas échéant)
L'option --host est équivalente, sauf que son argument est facultatif et
que sa valeur par défaut est l'hôte courant, soit melee
que sa valeur par défaut est l'hôte courant, soit sulfure
--list
Afficher la liste des scripts qui sont disponibles. Avec l'option -h,
inclure aussi les scripts spécifiques à cet hôte.

33
doc/runsconfig.md Normal file
View File

@ -0,0 +1,33 @@
# runsconfig
~~~
runsconfig: Gérer un répertoire d'hôte de runs
USAGE
runsconfig -c [host [destdir]]
runsconfig -t -- args...
OPTIONS
-c, --create
Créer un nouveau répertoire de configuration pour un hôte
-d, --destdir DESTDIR[=runs]
Nom du répertoire local de configuration.
-t, --template [OPT]
Gérer les fichiers du répertoire local avec templatectl. La valeur de
cette option est utilisée comme argument court pour l'invocation de
templatectl, e.g
runsconfig -tm args
est équivalent à
templatectl -m args
Les arguments qui restent sont passés tels quels à templatectl
Les options courantes de templatectl -l, -v, -m, -L sont disponibles
directement
--help-template
Afficher l'aide concernent la gestion des templates.
Equivalent à -t -- --help
-h, --host HOST
Spécifier l'hôte. Equivalent à -v host=HOST
~~~
-*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8:noeol:binary

37
doc/runsconfig.twp Normal file
View File

@ -0,0 +1,37 @@
# -*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8
##@creator: jclain
##@created: 27/04/2016 03:19
##@modifier: jclain
##@changecount: 1
##@tags:
##@title: runsconfig
{{{
runsconfig: Gérer un répertoire d'hôte de runs
USAGE
runsconfig -c [host [destdir]]
runsconfig -t -- args...
OPTIONS
-c, --create
Créer un nouveau répertoire de configuration pour un hôte
-d, --destdir DESTDIR[=runs]
Nom du répertoire local de configuration.
-t, --template [OPT]
Gérer les fichiers du répertoire local avec templatectl. La valeur de
cette option est utilisée comme argument court pour l'invocation de
templatectl, e.g
runsconfig -tm args
est équivalent à
templatectl -m args
Les arguments qui restent sont passés tels quels à templatectl
Les options courantes de templatectl -l, -v, -m, -L sont disponibles
directement
--help-template
Afficher l'aide concernent la gestion des templates.
Equivalent à -t -- --help
-h, --host HOST
Spécifier l'hôte. Equivalent à -v host=HOST
}}}

66
doc/runsmod.md Normal file
View File

@ -0,0 +1,66 @@
# runsmod
~~~
runsmod: récupérer des dépôts git à usage de runs
USAGE
runsmod [options] [-h host] [modules...]
Tous les dépôts spécifiés dans la configuration sont récupérés. Si des modules
sont spécifiés, les dépôts correspondants sont récupérés aussi. Avec l'option
-h, des dépôts spécifiques à l'hôte peuvent éventuellement être récupérés en
plus.
OPTIONS
-c, --config CONFIG
Spécifier un fichier de configuration à charger au lieu de la valeur par
défaut ~/etc/default/runs
--prod
--devel
Forcer un mode de sélection des urls. En mode production, préférer pour
le clonage les urls de production, qui sont en principe accessibles sans
authentification et en lecture seule. En mode développement, préférer
pour le clonage les urls de développement, qui sont en principe
accessibles par clé ssh et en lecture/écriture
--no-fetch
Ne rien récupérer. Utile avec --update-repolist
-N, --no-host
-A, --all-hosts
-H, -h, --host HOST
-T, --this-host
Options permettant de spécifier l'hôte pour la récupération de dépôts
spécifiques.
--no-host demande explicitement à ce qu'aucun hôte ne soit spécifié
--all-hosts sélectionne tous les dépôts spécifiques
--host récupère uniquement les dépôts pour l'hôte spécifié
--this-host équivaut à --host sulfure
L'option par défaut est --this-host en mode production et --all-hosts en
mode développement
--update-repolist
Forcer la mise à jour de la liste des dépôts. En principe, cette mise à
jour n'est pas faite plus d'une fois par période de 24 heures.
-0, --offline
-n, --no-pull
-u, --pull
Spécifier le mode opératoire pour la récupération des dépôts.
En mode --offline, ni clone ni pull ne sont autorisés. Le module doit
avoir déjà été cloné.
En mode --no-pull, seul le clonage est autorisé, e.g. le dépôt est
cloné si ce n'est pas déjà le cas.
En mode --pull, cloner le dépôt si ce n'est pas déjà le cas, ou le
mettre à jour le dépôt avant de l'utiliser s'il avait déjà été cloné.
Par défaut, utiliser --pull en mode production et --no-pull en mode
développement.
-i, --identity IDENTITY_FILE
Spécifier le fichier depuis lequel lire la clé privée pour les
connexions par ssh.
-o, --output OUTPUT
Spécifier un fichier dans lequel écrire des définitions de variables,
notamment REPODIRS qui reçoit la liste des chemins des dépôts qui ont
été récupérés. De plus, les variables RUNSSCRIPTSPATH, RUNSMODULESPATH
et RUNSHOSTSPATH sont définies.
-a, --append-output
Ajouter au fichier OUTPUT au lieu de l'écraser
~~~
-*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8:noeol:binary

70
doc/runsmod.twp Normal file
View File

@ -0,0 +1,70 @@
# -*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8
##@creator: jclain
##@created: 27/04/2016 03:19
##@modifier: jclain
##@changecount: 1
##@tags:
##@title: runsmod
{{{
runsmod: récupérer des dépôts git à usage de runs
USAGE
runsmod [options] [-h host] [modules...]
Tous les dépôts spécifiés dans la configuration sont récupérés. Si des modules
sont spécifiés, les dépôts correspondants sont récupérés aussi. Avec l'option
-h, des dépôts spécifiques à l'hôte peuvent éventuellement être récupérés en
plus.
OPTIONS
-c, --config CONFIG
Spécifier un fichier de configuration à charger au lieu de la valeur par
défaut ~/etc/default/runs
--prod
--devel
Forcer un mode de sélection des urls. En mode production, préférer pour
le clonage les urls de production, qui sont en principe accessibles sans
authentification et en lecture seule. En mode développement, préférer
pour le clonage les urls de développement, qui sont en principe
accessibles par clé ssh et en lecture/écriture
--no-fetch
Ne rien récupérer. Utile avec --update-repolist
-N, --no-host
-A, --all-hosts
-H, -h, --host HOST
-T, --this-host
Options permettant de spécifier l'hôte pour la récupération de dépôts
spécifiques.
--no-host demande explicitement à ce qu'aucun hôte ne soit spécifié
--all-hosts sélectionne tous les dépôts spécifiques
--host récupère uniquement les dépôts pour l'hôte spécifié
--this-host équivaut à --host sulfure
L'option par défaut est --this-host en mode production et --all-hosts en
mode développement
--update-repolist
Forcer la mise à jour de la liste des dépôts. En principe, cette mise à
jour n'est pas faite plus d'une fois par période de 24 heures.
-0, --offline
-n, --no-pull
-u, --pull
Spécifier le mode opératoire pour la récupération des dépôts.
En mode --offline, ni clone ni pull ne sont autorisés. Le module doit
avoir déjà été cloné.
En mode --no-pull, seul le clonage est autorisé, e.g. le dépôt est
cloné si ce n'est pas déjà le cas.
En mode --pull, cloner le dépôt si ce n'est pas déjà le cas, ou le
mettre à jour le dépôt avant de l'utiliser s'il avait déjà été cloné.
Par défaut, utiliser --pull en mode production et --no-pull en mode
développement.
-i, --identity IDENTITY_FILE
Spécifier le fichier depuis lequel lire la clé privée pour les
connexions par ssh.
-o, --output OUTPUT
Spécifier un fichier dans lequel écrire des définitions de variables,
notamment REPODIRS qui reçoit la liste des chemins des dépôts qui ont
été récupérés. De plus, les variables RUNSSCRIPTSPATH, RUNSMODULESPATH
et RUNSHOSTSPATH sont définies.
-a, --append-output
Ajouter au fichier OUTPUT au lieu de l'écraser
}}}

34
doc/rwoinst.md Normal file
View File

@ -0,0 +1,34 @@
# rwoinst
~~~
rwoinst: Déploiement distant avec woinst
USAGE
rwoinst [-H host] [-T tmproot] <file|archive|dir>... [-- options de woinst]
OPTIONS
-C Ne pas faire le déploiement. Configurer uniquement la connexion par clé
sur les hôtes distants spécifiés pour le user spécifié. Il faut pouvoir
se connecter par mot de passe pour configurer la connexion par clé.
Si l'on veut configurer la connexion par clé pour le user root, mais que
ce n'est pas possible de se connecter par mot de passe avec le user root
sur l'hôte distant, et qu'il existe un user sudoer sur l'hôte distant,
il est possible de faire la configuration avec '--configure root'. La
commande serait alors
rwoinst -H user@host --configure root
-T tmproot
Spécifier le répertoire temporaire sur l'hôte distant, comme par exemple
/var/tmp. Cette option est utile pour les vservers, qui ont par défaut
un /tmp minuscule de 16 Mo.
-S ssh
Spécifier le programme à utiliser pour la connection par ssh.
-H host
Spécifier un hôte distant sur lequel faire le déploiement. Plusieurs
options -H peuvent être spécifiées, ou alors on peut séparer plusieurs
hôtes par ':', e.g. -H host1:host2
Par défaut, la connexion sur l'hôte distant se fait avec l'utilisateur
root. Il est possible de spécifier un autre utilisateur avec la syntaxe
user@host, e.g -H user@host
~~~
-*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8:noeol:binary

94
doc/sqlcsv.md Normal file
View File

@ -0,0 +1,94 @@
# sqlcsv
~~~
USAGE:
sqlcsv [query]
query est la requête SQL à exécuter. Si query n'est pas spécifiée ou si elle
vaut '-', la requête SQL est lue sur l'entrée standard, ou depuis un
fichier si l'option -f est spécifiée.
DEMARRAGE
Au démarrage, les répertoires de configuration (utilisateur ~/.sqlcsv et système
/etc/sqlcsv) sont analysés. Les fichiers *.jar situés dans ces répertoires sont
ajoutés au CLASSPATH. La présence de certains fichiers est testée pour activer
éventuellement les logs détaillés.
OPTIONS
-C, --config CONFIG
Prendre les informations de connexion depuis le fichier de propriété
spécifié. Pour l'identifiant CONN, la propriété 'CONN.url' doit exister
dans ce fichier avec la valeur de l'url jdbc de connexion. De plus, les
propriétés 'CONN.user' et 'CONN.password' contiennent respectivement si
nécessaire le nom et le mot de passe de connexion. La propriété
'loglevel', si elle existe, est utilisée pour configurer le niveau
d'affichage des logs, comme avec l'option --loglevel
Si cette option n'est pas spécifiée, un fichier nommé sqlcsv.properties
est recherché dans l'ordre: dans le répertoire courant, dans le
répertoire de configuration utilisateur, puis dans le répertoire de
configuration système. Si le fichier est trouvé, il est chargé
automatiquement.
-l, --conn CONN
Spécifier l'identifiant (ou l'url) de connexion. Cette information est
obligatoire. Si cette option n'est pas fournie, il faut spécifier un
fichier de configuration avec l'option -C dans lequel *une seule*
propriété 'CONN.url' est définie.
-u, --user USER
-p, --password PASSWORD
Spécifier un nom de connexion et un mot de passe si l'url ne le fournit
pas. Ces valeurs ont la priorité sur les valeurs éventuellement déjà
présentes dans le fichier de propriété.
-f, --input INPUT
Lire la requête depuis le fichier INPUT au lieu de la lire depuis la
ligne de commande ou l'entrée standard. Ne pas spécifier cette option ou
utiliser '-' pour lire depuis l'entrée standard. Cette option est
ignorée si la requête est fournie sur la ligne de commande.
-o, --output OUTPUT
Ecrire le résultat dans le fichier OUTPUT. Utiliser '-' pour spécifier
la sortie standard (c'est la valeur par défaut). S'il y a plusieurs
requêtes et que le fichier de sortie n'est pas la sortie standard,
ajouter un numéro incrémental au nom du fichier en sortie pour chaque
requête. Sinon, il est possible de spécifier plusieurs fois cette option
pour nommer les fichiers correspondant à chaque requête.
-t, --autocommit
Activer le mode autocommit
-c, --ignore-io-error
Continuer le traitement même en cas d'erreur du système de fichiers.
Cependant le traitement s'arrête et la transaction est annulée si une
autre erreur se produit.
-y, --ignore-any-error
Continuer le traitement même en cas d'erreur quelconque.
-n, --no-headers
Ne JAMAIS inclure les en-têtes dans la sortie, même avec l'option -h
-a, --append
Ajouter le résultat au fichier OUTPUT au lieu de l'écraser.
-A, --auto-na
Activer les option -n -a si le fichier OUTPUT existe et qu'il est non
vide. Le test n'est effectué que pour le premier fichier spécifié.
-s, --same-output
Utiliser le même fichier pour écrire le résultat de toutes les requêtes.
Normalement, un numéro incrémental est ajouté au fichier en sortie si
plusieurs requêtes sont spécifiées. Si les en-têtes sont les mêmes,
ajouter le résultat au fichier directement à la suite. Sinon, sauter une
ligne blanche et afficher les nouveaux en-têtes.
-h, --force-headers
En cas d'écriture du résultat de plusieurs requêtes dans un même
fichier, ne pas tenter de concaténer les résultats même si les en-têtes
sont les mêmes.
--uc-output
Ajouter dans la sortie les résultat de toutes les requêtes, pas
seulement celles de type DQML
--loglevel LOGLEVEL
Spécifier le niveau de logs à afficher. Les valeurs valides sont à
choisir parmi ALL, FINEST, FINER, FINE, CONFIG, INFO, WARNING, ERROR
La présence de certains fichiers dans les répertoires de configuration
utilisateur ou système configure les logs avant que les options de la
ligne de commande ne soient analysés: un fichier DEBUG fait démarrer
l'application avec le niveau de log ALL ce qui permet de voir les logs
concernant le chargement des jar. Un fichier SQL_DEBUG permet d'activer
la trace de DriverManager. Exemple:
mkdir -p ~/.sqlcsv && touch ~/.sqlcsv/{DEBUG,SQL_DEBUG}
~~~
-*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8:noeol:binary

98
doc/sqlcsv.twp Normal file
View File

@ -0,0 +1,98 @@
# -*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8
##@creator: jclain
##@created: 27/04/2016 03:19
##@modifier: jclain
##@changecount: 1
##@tags:
##@title: sqlcsv
{{{
USAGE:
sqlcsv [query]
query est la requête SQL à exécuter. Si query n'est pas spécifiée ou si elle
vaut '-', la requête SQL est lue sur l'entrée standard, ou depuis un
fichier si l'option -f est spécifiée.
DEMARRAGE
Au démarrage, les répertoires de configuration (utilisateur ~/.sqlcsv et système
/etc/sqlcsv) sont analysés. Les fichiers *.jar situés dans ces répertoires sont
ajoutés au CLASSPATH. La présence de certains fichiers est testée pour activer
éventuellement les logs détaillés.
OPTIONS
-C, --config CONFIG
Prendre les informations de connexion depuis le fichier de propriété
spécifié. Pour l'identifiant CONN, la propriété 'CONN.url' doit exister
dans ce fichier avec la valeur de l'url jdbc de connexion. De plus, les
propriétés 'CONN.user' et 'CONN.password' contiennent respectivement si
nécessaire le nom et le mot de passe de connexion. La propriété
'loglevel', si elle existe, est utilisée pour configurer le niveau
d'affichage des logs, comme avec l'option --loglevel
Si cette option n'est pas spécifiée, un fichier nommé sqlcsv.properties
est recherché dans l'ordre: dans le répertoire courant, dans le
répertoire de configuration utilisateur, puis dans le répertoire de
configuration système. Si le fichier est trouvé, il est chargé
automatiquement.
-l, --conn CONN
Spécifier l'identifiant (ou l'url) de connexion. Cette information est
obligatoire. Si cette option n'est pas fournie, il faut spécifier un
fichier de configuration avec l'option -C dans lequel *une seule*
propriété 'CONN.url' est définie.
-u, --user USER
-p, --password PASSWORD
Spécifier un nom de connexion et un mot de passe si l'url ne le fournit
pas. Ces valeurs ont la priorité sur les valeurs éventuellement déjà
présentes dans le fichier de propriété.
-f, --input INPUT
Lire la requête depuis le fichier INPUT au lieu de la lire depuis la
ligne de commande ou l'entrée standard. Ne pas spécifier cette option ou
utiliser '-' pour lire depuis l'entrée standard. Cette option est
ignorée si la requête est fournie sur la ligne de commande.
-o, --output OUTPUT
Ecrire le résultat dans le fichier OUTPUT. Utiliser '-' pour spécifier
la sortie standard (c'est la valeur par défaut). S'il y a plusieurs
requêtes et que le fichier de sortie n'est pas la sortie standard,
ajouter un numéro incrémental au nom du fichier en sortie pour chaque
requête. Sinon, il est possible de spécifier plusieurs fois cette option
pour nommer les fichiers correspondant à chaque requête.
-t, --autocommit
Activer le mode autocommit
-c, --ignore-io-error
Continuer le traitement même en cas d'erreur du système de fichiers.
Cependant le traitement s'arrête et la transaction est annulée si une
autre erreur se produit.
-y, --ignore-any-error
Continuer le traitement même en cas d'erreur quelconque.
-n, --no-headers
Ne JAMAIS inclure les en-têtes dans la sortie, même avec l'option -h
-a, --append
Ajouter le résultat au fichier OUTPUT au lieu de l'écraser.
-A, --auto-na
Activer les option -n -a si le fichier OUTPUT existe et qu'il est non
vide. Le test n'est effectué que pour le premier fichier spécifié.
-s, --same-output
Utiliser le même fichier pour écrire le résultat de toutes les requêtes.
Normalement, un numéro incrémental est ajouté au fichier en sortie si
plusieurs requêtes sont spécifiées. Si les en-têtes sont les mêmes,
ajouter le résultat au fichier directement à la suite. Sinon, sauter une
ligne blanche et afficher les nouveaux en-têtes.
-h, --force-headers
En cas d'écriture du résultat de plusieurs requêtes dans un même
fichier, ne pas tenter de concaténer les résultats même si les en-têtes
sont les mêmes.
--uc-output
Ajouter dans la sortie les résultat de toutes les requêtes, pas
seulement celles de type DQML
--loglevel LOGLEVEL
Spécifier le niveau de logs à afficher. Les valeurs valides sont à
choisir parmi ALL, FINEST, FINER, FINE, CONFIG, INFO, WARNING, ERROR
La présence de certains fichiers dans les répertoires de configuration
utilisateur ou système configure les logs avant que les options de la
ligne de commande ne soient analysés: un fichier DEBUG fait démarrer
l'application avec le niveau de log ALL ce qui permet de voir les logs
concernant le chargement des jar. Un fichier SQL_DEBUG permet d'activer
la trace de DriverManager. Exemple:
mkdir -p ~/.sqlcsv && touch ~/.sqlcsv/{DEBUG,SQL_DEBUG}
}}}

35
doc/twsync.md Normal file
View File

@ -0,0 +1,35 @@
# twsync
~~~
twsync: synchroniser un répertoire de wiki avec un tiddlywiki
USAGE
twsync [options]
Un répertoire de wiki est un répertoire où chaque page est contenu dans un
fichier avec l'extension .twp
Un tiddlywiki est un fichier html contenant le code de TiddlyWiki et les données
associées.
OPTIONS
-d wikidir
-f wikifile
Spécifier le répertoire de wiki et le tiddlywiki à traiter. Par défaut,
il s'agit de wiki.html dans le répertoire courant.
-u Importer les pages de wikidir dans le tiddlywiki. Utiliser cette action
quand les pages de wikidir sont modifiées et qu'il faut mettre à jour le
tiddlywiki.
Il s'agit de l'action par défaut
--force
Forcer l'importation des pages même si les tiddlers correspondant sont
plus récents dans le tiddlywiki
Forcer aussi la regénération de wikifile même si aucune modification n'a
été détectée
-e Exporter les tiddlers du tiddlywiki vers wikidir. Utiliser cette action
quand le tiddlywiki a été modifié, et qu'il faut synchroniser wikidir
avec les dernières modifications.
-U Mettre à jour le fichier wikifile avec la dernière version de tiddlywiki
située dans ~/wop/modules/nutools/lib/tiddlywiki/empty.html
~~~
-*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8:noeol:binary

13
doc/uawk.md Normal file
View File

@ -0,0 +1,13 @@
# uawk
~~~
uawk: wrapper pour des outils implémentés en awk
USAGE
uawk TOOL args...
Les noms d'outils valides sont: awkrun awkcsv grepcsv awkfsv2csv mergecsv sortcsv dumpcsv printcsv
Utiliser l'option --help pour obtenir de l'aide sur chacun des outils
~~~
-*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8:noeol:binary

17
doc/uawk.twp Normal file
View File

@ -0,0 +1,17 @@
# -*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8
##@creator: jclain
##@created: 27/04/2016 03:19
##@modifier: jclain
##@changecount: 1
##@tags:
##@title: uawk
{{{
uawk: wrapper pour des outils implémentés en awk
USAGE
uawk TOOL args...
Les noms d'outils valides sont: awkrun awkcsv grepcsv awkfsv2csv mergecsv sortcsv dumpcsv printcsv
Utiliser l'option --help pour obtenir de l'aide sur chacun des outils
}}}

20
doc/ubackup.md Normal file
View File

@ -0,0 +1,20 @@
# ubackup
~~~
ubackup: faire une sauvegarde des fichiers
USAGE
ubackup [options]
OPTIONS
-l Lister les profils de sauvegarde disponibles.
-p Spécifier le profil de sauvegarde à effectuer. Par défaut, toutes les
sauvegardes sont effectuées.
-u USER
Faire le sauvegarde pour l'utilisateur $USER. Cette option n'est valide
que pour l'utilisateur root.
-n Afficher ce qui doit être fait plutôt que de le faire
-H Arrêter la machine après une sauvegarde REUSSIE.
~~~
-*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8:noeol:binary

31
doc/ucalc.md Normal file
View File

@ -0,0 +1,31 @@
# ucalc
~~~
ucalc: Afficher une valeur dans plusieurs unités
USAGE
ucalc value
Sans suffixe, la valeur est exprimée en octets. Sinon, elle peut être suffixée
pour spécifier l'unité dans laquelle est exprimée la valeur:
K,M,G,T -- Kibi (1024), Mibi (1024^2), Gibi (1024^3), Tebi (1024^4)
k,m,g,t -- Kilo (1000), Mega (1000^2), Giga (1000^3), Tera (1000^4)
s -- secteurs de 512 octets
S -- secteurs de 2048 octets
p -- pages de 4096 octets
c -- cylindres (si l'option -c est spécifiée)
b -- octets
OPTIONS
-u UNIT
Spécifier l'unité de value. Le suffixe qui est éventuellement sur value
est ignoré.
-o UNIT
Spécifier l'unité en sortie. Par défaut, afficher la valeur dans toutes
les unités supportées.
-c VALUE
Taille d'un cylindre en octets, pour permettre l'affichage des valeurs
en cylindres
~~~
-*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8:noeol:binary

35
doc/ucalc.twp Normal file
View File

@ -0,0 +1,35 @@
# -*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8
##@creator: jclain
##@created: 27/04/2016 03:19
##@modifier: jclain
##@changecount: 1
##@tags:
##@title: ucalc
{{{
ucalc: Afficher une valeur dans plusieurs unités
USAGE
ucalc value
Sans suffixe, la valeur est exprimée en octets. Sinon, elle peut être suffixée
pour spécifier l'unité dans laquelle est exprimée la valeur:
K,M,G,T -- Kibi (1024), Mibi (1024^2), Gibi (1024^3), Tebi (1024^4)
k,m,g,t -- Kilo (1000), Mega (1000^2), Giga (1000^3), Tera (1000^4)
s -- secteurs de 512 octets
S -- secteurs de 2048 octets
p -- pages de 4096 octets
c -- cylindres (si l'option -c est spécifiée)
b -- octets
OPTIONS
-u UNIT
Spécifier l'unité de value. Le suffixe qui est éventuellement sur value
est ignoré.
-o UNIT
Spécifier l'unité en sortie. Par défaut, afficher la valeur dans toutes
les unités supportées.
-c VALUE
Taille d'un cylindre en octets, pour permettre l'affichage des valeurs
en cylindres
}}}

52
doc/uconf.md Normal file
View File

@ -0,0 +1,52 @@
# uconf
~~~
uconf: Activer ou désactiver un paramètre dans un fichier de configuration
USAGE
uconf [options] config name[=value]...
OPTIONS
-e
Activer le paramètre (par défaut). Si le paramètre existe, mais est
commenté, il est décommenté. Si une valeur est spécifiée pour le
paramètre, le paramètre est modifié dans le fichier en conséquence.
-q
Cette option s'utilise avec l'option -e et le type shell. Elle permet
de s'assurer que les valeurs ayant des espaces et/ou des caractères
spéciaux sont quotées
-d
Désactiver le paramètre. Le paramètre est commenté s'il existe dans le
fichier
-a
Ajouter une valeur à la variable, ou un paramètre avec cette valeur
(suivant le type de fichier de configuration)
-A
Ajouter une valeur au tableau, ou un paramètre avec cette valeur
(suivant le type de fichier de configuration)
-t TYPE
Type de fichier de configuration. TYPE peut être sh (par défaut), apache
ou mysql.
shell
les paramètres sont de la forme 'name=value', et les commentaires
débutent par '#'. Ce type peut être utilisé pour tous les fichiers
ayant ces caractéristiques, dont les fichiers de script shell
apache
les paramètres sont de la forme 'name value', et les commentaires
débutent par '#'. Ce type peut être utilisé pour tous les fichiers
ayant ces caractéristiques, dont les fichiers de configuration
apache
mysql, php
les paramètres sont dans des sections nommées de la forme [section],
sont de la forme 'name=value', et les commentaires débutent par '#'
ou ';'
Ce type peut être utilisé pour tous les fichiers ayant ces
caractéristiques, dont les fichiers de configuration de mysql et de
php. Avec ce type, la section est obligatoire.
-s SECTION
Avec le type mysql, préciser la section dans laquelle inscrire le
paramètre. Attention! La section DOIT exister, elle n'est pas créée
automatiquement.
~~~
-*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8:noeol:binary

View File

@ -1,6 +1,6 @@
# -*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8
##@creator: jclain
##@created: 15/03/2012 22:20
##@created: 27/04/2016 03:19
##@modifier: jclain
##@changecount: 1
##@tags:
@ -13,17 +13,22 @@ USAGE
uconf [options] config name[=value]...
OPTIONS
-e Activer le paramètre (par défaut). Si le paramètre existe, mais est
-e
Activer le paramètre (par défaut). Si le paramètre existe, mais est
commenté, il est décommenté. Si une valeur est spécifiée pour le
paramètre, le paramètre est modifié dans le fichier en conséquence.
-q Cette option s'utilise avec l'option -e et le type shell. Elle permet
-q
Cette option s'utilise avec l'option -e et le type shell. Elle permet
de s'assurer que les valeurs ayant des espaces et/ou des caractères
spéciaux sont quotées
-d Désactiver le paramètre. Le paramètre est commenté s'il existe dans le
-d
Désactiver le paramètre. Le paramètre est commenté s'il existe dans le
fichier
-a Ajouter une valeur à la variable, ou un paramètre avec cette valeur
-a
Ajouter une valeur à la variable, ou un paramètre avec cette valeur
(suivant le type de fichier de configuration)
-A Ajouter une valeur au tableau, ou un paramètre avec cette valeur
-A
Ajouter une valeur au tableau, ou un paramètre avec cette valeur
(suivant le type de fichier de configuration)
-t TYPE
Type de fichier de configuration. TYPE peut être sh (par défaut), apache

86
doc/ucrontab.md Normal file
View File

@ -0,0 +1,86 @@
# ucrontab
~~~
ucrontab: Ajouter/Supprimer une ligne dans crontab
USAGE
ucrontab [options] ctline
OPTIONS
-a Ajouter la ligne dans le fichier crontab (par défaut)
-r Enlever la ligne dans le fichier crontab
-u user
Spécifier l'utilisateur pour lequel on modifie crontab. Par défaut,
modifier le crontab de root
-H host:hosts...
Modifier le crontab sur les hôtes distants spécifiés. Avec l'hôte '.' ou
'localhost', la modification est faite sur l'hôte local
Si l'action est -a, un script 'undo-ucrontab.sh' est créé dans le
répertoire courant, qui annule la planification. Il est possible de
lancer ce script le lendemain pour enlever les planifications
installées.
ctline
Ligne de crontab de la forme 'minutes hours days months dows command'
Si la ligne est de la forme halt[@hh:mm], la commande 'shutdown -h now'
est planifiée pour le LENDEMAIN à hh:mm. si hh:mm n'est pas spécifié,
l'arrêt est planifié pour 7:00
-t hh:mm
Ignorer la partie 'minutes hours days months dows' de ctline, et la
remplacer par une planification à hh:mm le LENDEMAIN.
--dom dayOfMonth
--month month
Spécifier respectivement le jour du mois et le mois (1-12) auquel faire
la planification. Par défaut, les planifications sont effectuées pour le
LENDEMAIN. Il est conseillé de spécifier les deux arguments si le jour
doit être fixé.
-s cmdfile
Spécifier un fichier, dont le contenu est utilisé pour générer le script
qui est planifié. Le fichier doit contenir l'ensemble des commandes à
exécuter. Le script est modifié pour s'autodétruire à la fin de son
exécution. Si ce comportement n'est pas souhaité, il faut rajouter la
commande 'exit 0' à la fin.
-S cmd
Comme -s, mais spécifier le contenu du fichier directement sur la ligne
de commande.
-f hostsfile
Spécifier un fichier qui contient la liste des hôtes sur lesquels faire
les planifications.
Les options -s, -S, -H, -d, -n sont ignorées. L'option --add est valide
jusqu'au premier @group du fichier. Voici le format de ce fichier:
Un groupe d'hôte débute par une ligne de la forme '@group:adelay:gdelay'
- adelay est le nombre de minutes à laisser passer entre les hôtes du
groupe (par défaut 1)
- gdelay est le nombre de minutes à laisser passer après le traitement
du groupe (par défaut 15)
Les autres lignes sont des hôtes sur lequels planifier l'opération, de
la forme 'host:cmd'
- host est un nom d'hôte pleinement qualifié, sur lequel il est possible
de se connecter par clé.
- cmd est une description de la commande à lancer pour effectuer
l'opération planifiée. Utiliser la syntaxe '<script' pour prendre le
contenu du fichier de script spécifié. Le script est copié dans un
fichier temporaire sur l'hôte, et se supprime après son
lancement. Sinon, la commande spécifiée est utilisée telle quelle. Si
cmd n'est pas spécifié, prendre la commande par défaut donnée par
ctline
Les lignes vides et commençant par '#' sont ignorées
La commande '@include:file' permet d'inclure un autre fichier
-d Activer l'incrémentation automatique des heures de planification entre
chaque hôte. Ceci permet par exemple de planifier l'arrêt d'un certain
nombre de machines dans un ordre précis, en horaire décalé.
Cette option est activée par défaut si ctline==halt[@time]
-n Désactiver l'incrémentation automatique des heures de planification.
--add ADELAY
Spécifier le nombre de minutes entre chaque hôte pour l'incrémentation
automatique des heures de planification. Par défaut, il y a 1 minute
entre chaque hôte.
--us undo-script
Spécifier le nom du script qui annule la planification. Utiliser ""
pour désactiver cette fonctionnalité.
--fake
Afficher simplement les modifications qui doivent être effectuées.
~~~
-*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8:noeol:binary

14
doc/udaemon.cgo.md Normal file
View File

@ -0,0 +1,14 @@
# udaemon.cgo
~~~
udaemon.cgo: start a program as a daemon
USAGE
udaemon.cgo /path/to/prog [args...]
OPTIONS
-d DESTDIR
Change to DESTDIR instead of "/" before starting the program
~~~
-*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8:noeol:binary

18
doc/udaemon.cgo.twp Normal file
View File

@ -0,0 +1,18 @@
# -*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8
##@creator: jclain
##@created: 27/04/2016 03:19
##@modifier: jclain
##@changecount: 1
##@tags:
##@title: udaemon.cgo
{{{
udaemon.cgo: start a program as a daemon
USAGE
udaemon.cgo /path/to/prog [args...]
OPTIONS
-d DESTDIR
Change to DESTDIR instead of "/" before starting the program
}}}

39
doc/udir.md Normal file
View File

@ -0,0 +1,39 @@
# udir
~~~
udir: gérer les variables de répertoire
USAGE
udir [options] [dir [name=value...]]
Par défaut, mettre à jour les variables du répertoire avec les définitions
données. Attention! Les définitions sont insérées *telles quelles* dans le
fichier. Par exemple, pour définir une variable qui contient des espaces,
on pourra faire:
udir /path/to/dir 'var="value with spaces"'
pour définir un tableau:
udir /path/to/dir 'array=(first second)'
OPTIONS
-i, --show-desc
-n, --show-note
Afficher la description du répertoire. C'est l'action par défaut si ce
script est lancé *sans argument*
-d, --dump
Afficher toutes les variables définies pour le répertoire 'dir'.
-x, --eval 'CMDS;...'
Exécuter les commandes dans le contexte des variables définies pour le
répertoire.
-e, --edit
Editer les variables du répertoire
--local-vars
Avec -d, ajouter des directives 'local' aux définitions de variables
-A, --all-parents
Avec -d et -x, considérer les variables de tous les répertoires parents
jusqu'à la racine. Pour ne considérer que les variables du répertoire
spécifié (par défaut), utiliser --local-only
--help-vars
Afficher une descriptions des variables spécifiques aux outils de nutools
~~~
-*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8:noeol:binary

View File

@ -1,6 +1,6 @@
# -*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8
##@creator: jclain
##@created: 15/03/2012 22:20
##@created: 11/05/2016 07:29
##@modifier: jclain
##@changecount: 1
##@tags:
@ -21,18 +21,23 @@ pour définir un tableau:
udir /path/to/dir 'array=(first second)'
OPTIONS
-i Afficher la description du répertoire. C'est l'action par défaut si ce
-i, --show-desc
-n, --show-note
Afficher la description du répertoire. C'est l'action par défaut si ce
script est lancé *sans argument*
-d Afficher toutes les variables définies pour le répertoire 'dir'.
-x 'cmds;...'
-d, --dump
Afficher toutes les variables définies pour le répertoire 'dir'.
-x, --eval 'CMDS;...'
Exécuter les commandes dans le contexte des variables définies pour le
répertoire.
-e Editer les variables du répertoire
-e, --edit
Editer les variables du répertoire
--local-vars
Avec -d, ajouter des directives 'local' aux définitions de variables
-A Avec -d et -x, considérer les variables de tous les répertoires parents
-A, --all-parents
Avec -d et -x, considérer les variables de tous les répertoires parents
jusqu'à la racine. Pour ne considérer que les variables du répertoire
spécifié (par défaut), utiliser --local-only
--help-vars
Afficher une descriptions des variables spécifiques aux outils de utools
Afficher une descriptions des variables spécifiques aux outils de nutools
}}}

103
doc/udist.md Normal file
View File

@ -0,0 +1,103 @@
# udist
~~~
udist: gestion d'une distribution upstream
Des fichiers de configuration (par exemple) sont distribués par un partenaire,
et il faut maintenir des modifications locales, tout en acceptant les mises à
jour provenant de l'upstream. Ce script aide à maintenir un tel scénario.
En général, la distribution upstream identifie les fichiers modifiables en leur
donnant une extension particulière, par exemple 'file.origine' ou 'file.default'
La liste des extensions reconnues est spécifiée avec l'option -s. Lors de leur
intégration dans le répertoire local, ces fichiers sont copiés sans cette
extension.
Terminologie: Les fichiers pour lesquels il faut maintenir une version locale
sont appelés 'fichiers locaux', qu'ils viennent de la distribution upstream ou
non. Les autres fichiers qui proviennent de la distribution sont appelés
'fichiers upstream'.
USAGE
udist cmd [options]
OPTIONS COMMUNES
-s .EXT
Ajouter une extension à la liste des extensions reconnues comme contenu
original modifiable dans la distribution upstream. Par défaut, les
extensions suivantes sont reconnues:
.udist .origine .default
Cette option peut être utilisée autant de fois que nécessaire.
--clear-origexts
Supprimer la liste par défaut des extensions origines. Cette option doit
être spécifiée avant l'option -s pour construire une nouvelle liste.
La liste des extensions ne doit pas être vide. Si c'est le cas, elle est
modifiée pour contenir l'unique élément (.udist)
-d WORKDIR
Spécifier le répertoire de travail. Par défaut, la racine du répertoire
de travail est cherchée à partir du répertoire courant.
--help
Afficher l'aide détaillée de la commande spécifiée
COMMANDES
init [WORKDIR [ARCHIVE]]
Initialiser un répertoire de travail pour contenir une distribution
upstream
upstream-new, new SRCDIR|ARCHIVE [WORKDIR]
Intégrer une nouvelle distribution upstream.
Les nouveaux fichiers sont copiés tout de suite dans le répertoire de
travail. Par contre, les modifications ne sont intégrées qu'avec la
commande patch
upstream-clear, clear [WORKDIR]
Supprimer tous les fichiers non modifiés de l'upstream.
local-create, create FILE
Créer et/ou identifier FILE comme une modification locale par rapport à
l'upstream.
local-edit, edit FILE
S'assurer que local-create a été exécuté si nécessaire pour FILE, puis
l'éditer avec vim
local-copy, cp SRCFILE DESTFILE
local-move, mv SRCFILE DESTFILE
local-remove, rm FILE
Frontend pour respectivement cp, mv et rm. Ces commandes agissent aussi
sur les fichiers orig et de tag.
local-tag, tag FILE TAG
Faire une copie du fichier local avec le tag spécifié. Si le fichier de
tag existe déjà, il est écrasé.
local-switch, switch TAG FILE
Sélectionner la copie avec le tag spécifié.
local-put, put [WORKDIR] DESTDIR
Copier tous les fichiers locaux dans DESTDIR, par exemple pour faire une
sauvegarde. Si DESTDIR n'est pas spécifié, prendre la valeur de
l'origine, affichée par local-list
local-get, get [-l|-s] SRCDIR [WORKDIR]
Opération inverse de local-put: intégrer tous les fichiers de SRCDIR
comme fichiers locaux. Si SRCDIR n'est pas spécifié, prendre la valeur
de l'origine, affichée par local-list
local-list, list [WORKDIR]
Lister tous les fichiers locaux. Les fichiers pour lesquels il faut
intégrer une modification de l'upstream avec la commande local-patch
sont identifiés visuellement.
upstream-diff, udiff [FILE]
Après intégration d'une nouvelle distribution upstream, afficher les
modifications entre la nouvelle distribution upstream et l'ancienne pour
tous les fichiers modifiables
local-diff, ldiff [FILE]
Afficher les modifications locales par rapport à l'upstream pour le(s)
fichier(s) spécifié(s).
local-patch, lpatch [FILE]
Après intégration d'une nouvelle distribution upstream, appliquer au(x)
le(s) fichier(s) spécifié(s) les modifications disponibles affichées par
upstream-diff.
local-forget, lforget [FILE]
Après intégration d'une nouvelle distribution upstream, oublier les
modifications disponibles pour le(s) fichier(s) spécifié(s).
~~~
-*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8:noeol:binary

107
doc/udist.twp Normal file
View File

@ -0,0 +1,107 @@
# -*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8
##@creator: jclain
##@created: 27/04/2016 03:19
##@modifier: jclain
##@changecount: 1
##@tags:
##@title: udist
{{{
udist: gestion d'une distribution upstream
Des fichiers de configuration (par exemple) sont distribués par un partenaire,
et il faut maintenir des modifications locales, tout en acceptant les mises à
jour provenant de l'upstream. Ce script aide à maintenir un tel scénario.
En général, la distribution upstream identifie les fichiers modifiables en leur
donnant une extension particulière, par exemple 'file.origine' ou 'file.default'
La liste des extensions reconnues est spécifiée avec l'option -s. Lors de leur
intégration dans le répertoire local, ces fichiers sont copiés sans cette
extension.
Terminologie: Les fichiers pour lesquels il faut maintenir une version locale
sont appelés 'fichiers locaux', qu'ils viennent de la distribution upstream ou
non. Les autres fichiers qui proviennent de la distribution sont appelés
'fichiers upstream'.
USAGE
udist cmd [options]
OPTIONS COMMUNES
-s .EXT
Ajouter une extension à la liste des extensions reconnues comme contenu
original modifiable dans la distribution upstream. Par défaut, les
extensions suivantes sont reconnues:
.udist .origine .default
Cette option peut être utilisée autant de fois que nécessaire.
--clear-origexts
Supprimer la liste par défaut des extensions origines. Cette option doit
être spécifiée avant l'option -s pour construire une nouvelle liste.
La liste des extensions ne doit pas être vide. Si c'est le cas, elle est
modifiée pour contenir l'unique élément (.udist)
-d WORKDIR
Spécifier le répertoire de travail. Par défaut, la racine du répertoire
de travail est cherchée à partir du répertoire courant.
--help
Afficher l'aide détaillée de la commande spécifiée
COMMANDES
init [WORKDIR [ARCHIVE]]
Initialiser un répertoire de travail pour contenir une distribution
upstream
upstream-new, new SRCDIR|ARCHIVE [WORKDIR]
Intégrer une nouvelle distribution upstream.
Les nouveaux fichiers sont copiés tout de suite dans le répertoire de
travail. Par contre, les modifications ne sont intégrées qu'avec la
commande patch
upstream-clear, clear [WORKDIR]
Supprimer tous les fichiers non modifiés de l'upstream.
local-create, create FILE
Créer et/ou identifier FILE comme une modification locale par rapport à
l'upstream.
local-edit, edit FILE
S'assurer que local-create a été exécuté si nécessaire pour FILE, puis
l'éditer avec vim
local-copy, cp SRCFILE DESTFILE
local-move, mv SRCFILE DESTFILE
local-remove, rm FILE
Frontend pour respectivement cp, mv et rm. Ces commandes agissent aussi
sur les fichiers orig et de tag.
local-tag, tag FILE TAG
Faire une copie du fichier local avec le tag spécifié. Si le fichier de
tag existe déjà, il est écrasé.
local-switch, switch TAG FILE
Sélectionner la copie avec le tag spécifié.
local-put, put [WORKDIR] DESTDIR
Copier tous les fichiers locaux dans DESTDIR, par exemple pour faire une
sauvegarde. Si DESTDIR n'est pas spécifié, prendre la valeur de
l'origine, affichée par local-list
local-get, get [-l|-s] SRCDIR [WORKDIR]
Opération inverse de local-put: intégrer tous les fichiers de SRCDIR
comme fichiers locaux. Si SRCDIR n'est pas spécifié, prendre la valeur
de l'origine, affichée par local-list
local-list, list [WORKDIR]
Lister tous les fichiers locaux. Les fichiers pour lesquels il faut
intégrer une modification de l'upstream avec la commande local-patch
sont identifiés visuellement.
upstream-diff, udiff [FILE]
Après intégration d'une nouvelle distribution upstream, afficher les
modifications entre la nouvelle distribution upstream et l'ancienne pour
tous les fichiers modifiables
local-diff, ldiff [FILE]
Afficher les modifications locales par rapport à l'upstream pour le(s)
fichier(s) spécifié(s).
local-patch, lpatch [FILE]
Après intégration d'une nouvelle distribution upstream, appliquer au(x)
le(s) fichier(s) spécifié(s) les modifications disponibles affichées par
upstream-diff.
local-forget, lforget [FILE]
Après intégration d'une nouvelle distribution upstream, oublier les
modifications disponibles pour le(s) fichier(s) spécifié(s).
}}}

37
doc/uenv.md Normal file
View File

@ -0,0 +1,37 @@
# uenv
~~~
uenv: Mettre à jour la configuration de l'environnement
USAGE
uenv [-u [projdirs...]]
Cette commande met à jour l'ordre de chargement des fichiers de configuration
dans ~/etc/{profile.d,bashrc.d}. Elle est donc utile si ces fichiers ont été
modifiés manuellement, ou si un fichier a été ajouté manuellement.
OPTIONS
HOME=/path/to/homedir
Spécifier le chemin vers ~
Cette option doit être placée avant les valeurs projdirs.
-u, --update
Installer ou mettre à jour les fichiers de profil des projets spécifiés:
Les fichiers ~/.profile, ~/.bash_profile et ~/.bashrc sont vérifiés et
corriger automatiquement pour inclure les fichiers de nutools.
Ensuite, les fichiers de profil sont copié dans les répertoires
~/etc/{profile.d,bashrc.d,default}
Les projets spécifiés *doivent* être configurés avec uinst -C, et
définir la valeur install_profiles=true dans leur fichier .udir
Si aucun projet n'est spécifié, prendre les fichiers de profil de
nutools.
-l, --local-profiles
Avec l'option -u, installer les profils locaux comme tels. Pour les
fichiers de profil qui sont indiqués comme non partagés, les copier dans
des répertoires spécifiques de la forme {profile,bashrc}.HOSTNAME.d et
default.HOSTNAME
-s, --shared-profiles
Installer les profils locaux comme des profils partagés. C'est l'option
par défaut.
~~~
-*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8:noeol:binary

View File

@ -1,6 +1,6 @@
# -*- coding: utf-8 mode: markdown -*- vim:sw=4:sts=4:et:ai:si:sta:fenc=utf-8
##@creator: jclain
##@created: 15/03/2012 22:20
##@created: 27/04/2016 03:19
##@modifier: jclain
##@changecount: 1
##@tags:
@ -20,7 +20,8 @@ OPTIONS
HOME=/path/to/homedir
Spécifier le chemin vers ~
Cette option doit être placée avant les valeurs projdirs.
-u Installer ou mettre à jour les fichiers de profil des projets spécifiés:
-u, --update
Installer ou mettre à jour les fichiers de profil des projets spécifiés:
Les fichiers ~/.profile, ~/.bash_profile et ~/.bashrc sont vérifiés et
corriger automatiquement pour inclure les fichiers de nutools.
Ensuite, les fichiers de profil sont copié dans les répertoires
@ -29,4 +30,12 @@ OPTIONS
définir la valeur install_profiles=true dans leur fichier .udir
Si aucun projet n'est spécifié, prendre les fichiers de profil de
nutools.
-l, --local-profiles
Avec l'option -u, installer les profils locaux comme tels. Pour les
fichiers de profil qui sont indiqués comme non partagés, les copier dans
des répertoires spécifiques de la forme {profile,bashrc}.HOSTNAME.d et
default.HOSTNAME
-s, --shared-profiles
Installer les profils locaux comme des profils partagés. C'est l'option
par défaut.
}}}

Some files were not shown because too many files have changed in this diff Show More