dumpcsv: ajout de l'option -b
This commit is contained in:
parent
939b5add30
commit
4808fa027d
33
lib/ulib/awk
33
lib/ulib/awk
|
@ -1751,14 +1751,14 @@ function sortcsv() { LANG=C lsortcsv "$@"; }
|
|||
__DUMPCSV_HELP="\
|
||||
Afficher les champs spécifiés pour traitement par le shell
|
||||
|
||||
--skip-lines nblines
|
||||
-s, -S, --skip-lines nblines
|
||||
Sauter nblines au début du flux
|
||||
-h, --parse-headers
|
||||
-h, -H, --parse-headers
|
||||
Lire la liste des champs à partir de la première ligne non ignorée du flux.
|
||||
Si cette option est spécifiée (ce qui est le cas par défaut), les champs
|
||||
spécifiés peuvent être les noms effectifs des champs. Sinon, les champs ne
|
||||
peuvent être que numériques.
|
||||
--numkeys
|
||||
-N, --numkeys
|
||||
Ne pas analyser la première ligne pour les noms des champs. Les champs
|
||||
spécifiés ne peuvent être que numériques.
|
||||
|
||||
|
@ -1769,13 +1769,22 @@ Afficher les champs spécifiés pour traitement par le shell
|
|||
dump value00 value01...
|
||||
dump value10 value11...
|
||||
C'est la méthode d'affichage par défaut. L'option -n permet de spécifier le
|
||||
nom de la fonction, qui vaut par défaut 'dump'
|
||||
nom de la fonction, qui vaut 'dump' par défaut
|
||||
-a, --array
|
||||
Afficher les champs comme les valeurs d'un tableau, e.g:
|
||||
values=(value00 value01...)
|
||||
values=(value10 value11...)
|
||||
L'option -n permet de spécifier le nom du tableau, qui vaut par défaut
|
||||
'values'"
|
||||
L'option -n permet de spécifier le nom du tableau, qui vaut 'values' par
|
||||
défaut
|
||||
-b, --array-function
|
||||
Afficher les champs comme l'initialisation des valeurs d'un tableau suivi de
|
||||
l'appel d'une fonction, e.g:
|
||||
values=(value00 value01...)
|
||||
dump
|
||||
values=(value10 value11...)
|
||||
dump
|
||||
Le nom du tableau est fixé à 'values'. L'option -n permet de spécifier le
|
||||
nom de la fonction, qui vaut 'dump' par défaut"
|
||||
|
||||
: "${__DUMPCSV_DEBUG:=}"
|
||||
function ldumpcsv() {
|
||||
|
@ -1783,12 +1792,13 @@ function ldumpcsv() {
|
|||
local skip= parse_headers=1
|
||||
local name dump=function
|
||||
parse_opts "${PRETTYOPTS[@]}" \
|
||||
--skip:,--skip-lines:,--skiplines: skip= \
|
||||
-h,--parse-headers parse_headers=1 \
|
||||
--numkeys parse_headers= \
|
||||
-s:,-S:,--skip:,--skip-lines:,--skiplines: skip= \
|
||||
-h,-H,--parse-headers parse_headers=1 \
|
||||
-N,--numkeys parse_headers= \
|
||||
-n:,--name: name= \
|
||||
-f,--function dump=function \
|
||||
-a,--array dump=array \
|
||||
-b,--array-function dump=array-function \
|
||||
@ args -- "$@" && set -- "${args[@]}" || die "$args"
|
||||
|
||||
args=(${skip:+--skip-lines "$skip"})
|
||||
|
@ -1798,7 +1808,7 @@ function ldumpcsv() {
|
|||
|
||||
if [ -z "$name" ]; then
|
||||
case "$dump" in
|
||||
function) name=dump;;
|
||||
function|array-function) name=dump;;
|
||||
array) name=values;;
|
||||
esac
|
||||
fi
|
||||
|
@ -1817,6 +1827,9 @@ function ldumpcsv() {
|
|||
print qarr(values, name)
|
||||
} else if (dump == "array") {
|
||||
print name "=(" qarr(values) ")"
|
||||
} else if (dump == "array-function") {
|
||||
print "values=(" qarr(values) ")"
|
||||
print name
|
||||
}
|
||||
}'
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue