awkrun: renommer les fonctions quote_*
This commit is contained in:
parent
18691c86b9
commit
0eeee20c7a
55
lib/ulib/awk
55
lib/ulib/awk
|
@ -28,33 +28,68 @@ pour un tableau values qui contiendra deux valeurs: value1 et value2
|
||||||
|
|
||||||
Les fonctions suivantes sont définies:
|
Les fonctions suivantes sont définies:
|
||||||
|
|
||||||
quote_value(s)
|
num(s)
|
||||||
quoter une valeur pour le shell. la valeur est entourée de quotes, e.g:
|
si s ne contient que des chiffres, retourner la valeur numérique associée,
|
||||||
quote_value(\"here, \\\"there\\\" and 'everywhere'.\")
|
sinon retournée la valeur inchangée
|
||||||
--> 'here, \"there\" and '\\''everywhere'\\''.'
|
|
||||||
|
|
||||||
quoted_values()
|
ord(s)
|
||||||
|
retourner le code ASCII du premier caractère de la chaine s. seuls les codes
|
||||||
|
de 32 à 127 sont supportés
|
||||||
|
|
||||||
|
hex(i)
|
||||||
|
retourner la représentation hexadécimale du nombre i
|
||||||
|
|
||||||
|
qhtml(s)
|
||||||
|
remplacer respectivement dans la chaine s les valeurs &, \", > et < par
|
||||||
|
&, ", > et <
|
||||||
|
L'alias quote_html(s) existe pour compatibilité
|
||||||
|
|
||||||
|
unquote_html(s)
|
||||||
|
faire le contraire de qhtml(s)
|
||||||
|
|
||||||
|
qval(s)
|
||||||
|
quoter une valeur pour le shell. la valeur est entourée de quotes, e.g:
|
||||||
|
qval(\"here, \\\"there\\\" and 'everywhere'.\")
|
||||||
|
--> 'here, \"there\" and '\\''everywhere'\\''.'
|
||||||
|
L'alias quote_value(s) existe pour compatibilité
|
||||||
|
|
||||||
|
qsval(s)
|
||||||
|
comme qval() mais ajouter un espace avant la valeur quotée. ceci permet de
|
||||||
|
construire facilement une ligne de commande, e.g.:
|
||||||
|
print \"mycmd\" qsval(arg1) qsval(arg2)
|
||||||
|
|
||||||
|
qvals()
|
||||||
quoter les valeurs \$1..\$NF pour les passer comme argument sur la ligne de
|
quoter les valeurs \$1..\$NF pour les passer comme argument sur la ligne de
|
||||||
commande avec eval. e.g.:
|
commande avec eval. e.g.:
|
||||||
print \"mycmd \" quoted_values()
|
print \"mycmd \" qvals()
|
||||||
La ligne qui est affichée pourra être évaluée avec eval dans le shell.
|
La ligne qui est affichée pourra être évaluée avec eval dans le shell.
|
||||||
|
L'alias quoted_values(s) existe pour compatibilité
|
||||||
|
|
||||||
quote_subrepl(s)
|
qsvals(s)
|
||||||
|
comme qvals() mais ajouter un espace avant la valeur quotée. ceci permet de
|
||||||
|
construire facilement une ligne de commande, e.g.:
|
||||||
|
print \"mycmd\" qsvals()
|
||||||
|
|
||||||
|
qsubrepl(s)
|
||||||
quoter une valeur pour l'argument r des fonctions sub() et gsub(). Les
|
quoter une valeur pour l'argument r des fonctions sub() et gsub(). Les
|
||||||
caractères suivants sont mis en échappement: \\ &
|
caractères suivants sont mis en échappement: \\ &
|
||||||
|
L'alias quote_subrepl(s) existe pour compatibilité
|
||||||
|
|
||||||
quote_grep(s)
|
qgrep(s)
|
||||||
quoter une valeur pour un pattern *simple* de grep. Les caractères suivants
|
quoter une valeur pour un pattern *simple* de grep. Les caractères suivants
|
||||||
sont mis en échappement: \\ . [ ^ \$ *
|
sont mis en échappement: \\ . [ ^ \$ *
|
||||||
|
L'alias quote_grep(s) existe pour compatibilité
|
||||||
|
|
||||||
quote_egrep(s)
|
qegrep(s)
|
||||||
quoter une valeur pour un pattern *étendu* de grep. Les caractères suivants
|
quoter une valeur pour un pattern *étendu* de grep. Les caractères suivants
|
||||||
sont mis en échappement: \\ . [ ^ \$ ? + * ( ) | {
|
sont mis en échappement: \\ . [ ^ \$ ? + * ( ) | {
|
||||||
|
L'alias quote_egrep(s) existe pour compatibilité
|
||||||
|
|
||||||
quote_sql(s)
|
qsql(s)
|
||||||
quoter une valeur pour un script sql. la valeur est entourée de quotes, e.g:
|
quoter une valeur pour un script sql. la valeur est entourée de quotes, e.g:
|
||||||
quote_sql(\"hello'there\")
|
quote_sql(\"hello'there\")
|
||||||
--> 'hello''there'
|
--> 'hello''there'
|
||||||
|
L'alias quote_sql(s) existe pour compatibilité
|
||||||
|
|
||||||
unquote_mysqlcsv(s)
|
unquote_mysqlcsv(s)
|
||||||
Analyser une valeur exportée de MySQL avec mysqlcsv. Les transformations
|
Analyser une valeur exportée de MySQL avec mysqlcsv. Les transformations
|
||||||
|
|
|
@ -1848,13 +1848,14 @@ function hex(i, s) {
|
||||||
if (length(s) < 2) s = "0" s
|
if (length(s) < 2) s = "0" s
|
||||||
return s
|
return s
|
||||||
}
|
}
|
||||||
function quote_html(s) {
|
function qhtml(s) {
|
||||||
gsub(/&/, "\\&", s)
|
gsub(/&/, "\\&", s)
|
||||||
gsub(/"/, "\\"", s)
|
gsub(/"/, "\\"", s)
|
||||||
gsub(/>/, "\\>", s)
|
gsub(/>/, "\\>", s)
|
||||||
gsub(/</, "\\<", s)
|
gsub(/</, "\\<", s)
|
||||||
return s
|
return s
|
||||||
}
|
}
|
||||||
|
function quote_html(s) { return qhtml(s) }
|
||||||
function unquote_html(s) {
|
function unquote_html(s) {
|
||||||
gsub(/</, "<", s)
|
gsub(/</, "<", s)
|
||||||
gsub(/>/, ">", s)
|
gsub(/>/, ">", s)
|
||||||
|
@ -1862,11 +1863,15 @@ function unquote_html(s) {
|
||||||
gsub(/&/, "\\&", s)
|
gsub(/&/, "\\&", s)
|
||||||
return s
|
return s
|
||||||
}
|
}
|
||||||
function quote_value(s) {'"
|
function qval(s) {'"
|
||||||
gsub(/'/, \"'\\\\''\", s)
|
gsub(/'/, \"'\\\\''\", s)
|
||||||
return \"'\" s \"'\"
|
return \"'\" s \"'\"
|
||||||
"'}
|
"'}
|
||||||
function quoted_values( i, line) {
|
function quote_value(s) { return qval(s) }
|
||||||
|
function qsval(s) {
|
||||||
|
return " " qval(s)
|
||||||
|
}
|
||||||
|
function qvals( i, line) {
|
||||||
line = ""
|
line = ""
|
||||||
for (i = 1; i <= NF; i++) {
|
for (i = 1; i <= NF; i++) {
|
||||||
if (i > 1) line = line " "
|
if (i > 1) line = line " "
|
||||||
|
@ -1874,27 +1879,36 @@ function quoted_values( i, line) {
|
||||||
}
|
}
|
||||||
return line
|
return line
|
||||||
}
|
}
|
||||||
function quote_regexp(s) {
|
function quoted_values() { return qvals() }
|
||||||
|
function qsvals() {
|
||||||
|
return " " qvals()
|
||||||
|
}
|
||||||
|
function qregexp(s) {
|
||||||
gsub(/[[\\.^$*+?()|{]/, "\\\\&", s)
|
gsub(/[[\\.^$*+?()|{]/, "\\\\&", s)
|
||||||
return s
|
return s
|
||||||
}
|
}
|
||||||
function quote_subrepl(s) {
|
function quote_regexp(s) { return qregexp(s) }
|
||||||
|
function qsubrepl(s) {
|
||||||
gsub(/\\/, "\\\\", s)
|
gsub(/\\/, "\\\\", s)
|
||||||
gsub(/&/, "\\\\&", s)
|
gsub(/&/, "\\\\&", s)
|
||||||
return s
|
return s
|
||||||
}
|
}
|
||||||
function quote_grep(s) {
|
function quote_subrepl(s) { return qsubrepl(s) }
|
||||||
|
function qgrep(s) {
|
||||||
gsub(/[[\\.^$*]/, "\\\\&", s)
|
gsub(/[[\\.^$*]/, "\\\\&", s)
|
||||||
return s
|
return s
|
||||||
}
|
}
|
||||||
function quote_egrep(s) {
|
function quote_grep(s) { return qgrep(s) }
|
||||||
|
function qegrep(s) {
|
||||||
gsub(/[[\\.^$*+?()|{]/, "\\\\&", s)
|
gsub(/[[\\.^$*+?()|{]/, "\\\\&", s)
|
||||||
return s
|
return s
|
||||||
}
|
}
|
||||||
function quote_sql(s) {'"
|
function quote_egrep(s) { return qegrep(s) }
|
||||||
|
function qsql(s) {'"
|
||||||
gsub(/'/, \"''\", s)
|
gsub(/'/, \"''\", s)
|
||||||
return \"'\" s \"'\"
|
return \"'\" s \"'\"
|
||||||
"'}
|
"'}
|
||||||
|
function quote_sql(s) { return qsql(s) }
|
||||||
function unquote_mysqlcsv(s) {
|
function unquote_mysqlcsv(s) {
|
||||||
gsub(/\\n/, "\n", s)
|
gsub(/\\n/, "\n", s)
|
||||||
gsub(/\\t/, "\t", s)
|
gsub(/\\t/, "\t", s)
|
||||||
|
|
Loading…
Reference in New Issue