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…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user