Está en la página 1de 25

Índice

Los símbolos $ (signo de dólar)


& (ampersand) como metacarácter de fin de línea, 30,
& operador (lógico Y), 158 en texto 43 para la última línea de entrada, 59
de reemplazo, 81, 83 en espacio de patrón multilínea,
* (asterisco) 107 $ 0, $ 1, $ 2,. . . 20, 143
* operador (exponenciación), 148 ** . (punto) metacarácter, 28, 31, 40 = (signo igual)
= operador (asignación), 149 * = operador = = (igual a) operador, 157 para imprimir
(asignación), 149 como metacarácter, 28, números de línea, 95
operador de multiplicación 39–41, 148 ! (signo de exclamación), 59, 360
\ (barra invertida), 147 ! = (no es igual a) operador, 157
\ <, \> secuencias de escape, 50, ! ˜ (no coincide) operador, 145,
265 \ ', \' secuencias de escape, 265 157–158
clases de caracteres y, 35 comando de rama versus, 129
como metacarácter, 30–31 csh y 7
en texto de reemplazo, 81– operador lógico NOT, 158>
82 (más grande que el signo)
(ver también secuencias de escape, > = operador (mayor o igual que), 157
awk) para redireccionar, 18, 62, 239
{} (llaves) operador relacional, 157
\ {\} metacaracteres, 30, 45 - (guión)
en awk, 13, 20, 173 - = operador (asignación), 149
agrupando comandos sed en 61, 79 - - operador (reducción), 149–150
[ ] (paréntesis) metacaracteres, 30, 34–39 clases de caracteres y, 36–37
[::] metacaracteres, 38 operador de resta, 148
[. .] metacaracteres, 38 <(menos de signo)
[= =] metacaracteres, 38 <= operador (menor o igual que), 157
ˆ (circunflejo) operador relacional, 157
ˆ = operador (asignación), 149 # para comentarios, 80, 142, 368 #n para
clases de caracteres y, 30, 37 suprimir la salida, 80
operador de exponenciación, # !, invocando awk con, 252–254, 366
148 como metacaracteres, 30,
43
en espacio de patrón multilínea,
107: (dos puntos) para etiquetas,
128

397
398 Índice

( ) (par entesis), 14, 30, 46 Variable ARGV, 199


con texto de reemplazo, 84 Variable ARGI con (tawk), 275
% (signo de porcentaje) Variable ARGIND con (gawk), 268
% = (asignación) operador, 149 funciones aritméticas, 203–208, 258
para especificaciones de operadores aritméticos, awk, 148
formato, 164 operador de matrices, 182–193, 257, 373
módulo, 148 eliminación de elementos de, 193, 257,
+ (más) 259 multidimensional, 196–199, 274
Operador + = (asignación), 149 análisis de cadenas en elementos, 190,
+ (incremento) operador, 149–150 259 elementos de clasificación en
operador de suma, 148 (tawk), 274 división, 259
como metacaracteres, 30,
41 metacaracteres, 141 variables del sistema que son,
? (signo de interrogación) 199 pruebas de membresía, 188
?: operador (condicional), 174, 256 asignación de entrada a variables,
como metacarácter, 30, 41 230 operadores de asignación,
; (punto y coma), 17, 21, 368 '(comillas awk, 149 matrices asociativas,
simples), 13, 16 / (barra oblicua) 183–187 asterisco (*)
/ = operador (asignación), 149 * operador (exponenciación), 148 ** =
/ como delimitador, 11, operador de operador (asignación), 149 * = operador
división 81, 148 en comandos ed, 10 (asignación), 149 como metacarácter, 28,
patrón y dirección, 9, 360 operador de multiplicación 39–41, 148
˜ operador (partido), 145, 157–158 | (barra ediciones automáticas, 74–
vertical) 77 awk, 5, 12, 20–23, 255–
| (lógico OR), 158 como metacarácter, 259
30, 46 salida de tubería con, 240 matrices (ver matrices)
funciones integradas, 257
UNA variables integradas, 151–157,
258 sintaxis de línea de
un comando (sed), 87–90 comandos, 13, 365 comandos,
declaración de cancelación 78, 375–381
(tawk), 274 (ver también bajo comando específico)
procesador de acr onym (ejemplo), 193–199 documentación para xv
operador de suma (+), 148 err o mensajes, 22
direcciones, línea, 9, 12, 58–61, 78 secuencias de escape, 371
Dirección por patrón, 9, extensiones a, 259–262
impresión 360 con =, 95 funciones (ver funciones)
script adj (ejemplo), 333–340 invocando con # !, 252–254, 366
alineación de campos de salida, limitaciones a, 251
165 ampersand (&) obteniendo, xiii
& operador (lógico Y), 158 en texto de operadores, 374
reemplazo, 81, 83 opciones, 22
anclas, 30, 43 Estándares POSIX para 137
Operador AND (&&), 158 modelo de programación, 139
agregar comando (ver un comando (sed)) referencia rápida, 365–381
variable ARGC, 199
metacaracteres de expresiones regulares, 369
Variable ARGI (tawk), 275 con sed, 23-25
Variable ARGIND (gawk), 268
variables del sistema, 373
versiones de, xiii, 262–277
escribir guiones en, 137-171
AWKPATH variable (gawk), 264
Índice 399

BRE (expresiones regulares básicas),


38 buffers, vaciado, 260 funciones
si integradas
comando b (sed), 128–130 \
B secuencia de escape, 265 awk, 257
atrasos de respaldo (ver cadenas de reemplazo gawk, 268
numeradas) tawk, 275
barra invertida (\), 147 variables incorporadas, 151–157, 258
\ <, \> secuencias de escape, 50,
265 \ ', \' secuencias de escape, 265
clases de caracteres y, 35
como metacarácter, 30–31
en texto de reemplazo, 81–
82
(ver también secuencias de escape,
awk) bang (!) (ver signo de
exclamación) expresiones regulares
básicas (BRE), 38 patrón COMIENZO
parámetros de línea de comandos y,
167 BEGIN procedimiento, 139, 257
BEGINFILE procedimiento (tawk), 273
comienzo
de línea (ver ˆ (circunflejo))
de palabra (ver \ <, \> secuencias de
escape)
Bell Labs awk, 262
BITFTP, xviii
bloques de texto, 125–127
operadores booleanos, awk,
158
variables como patrones booleanos,
256 llaves {}, 360
\ {\} metacaracteres, 30, 45
en awk, 13, 20, 173
agrupando comandos sed en 61, 79
expresiones de paréntesis, 34–39
paréntesis []

[::] metacaracteres, 38
[. .] metacaracteres, 38
[= =] metacaracteres, 38
como metacaracteres, 30, 34–39
comando de rama (ver comando b (sed))
ramificación, 128–131
declaración breve, 180
líneas de corte, 265
orden de 56–58
sed, 78–79, 106, 361–364
C
comando c (sed), 87–90
mayúsculas, conversión, 93, 121, 209, 214
mayúsculas y minúsculas, 28, 214
clases de caracteres para, 34 variable
IGNORECASE (gawk), 268
nombres de variables, 147
(ver también mayúsculas, conversión)
comando de cambio (ver comando c (sed))
clases de caracteres, 34–39 caracteres

escondite especial, 318


coincidencia al inicio / final de la
palabra, 50 lapso medido de, 30, 45
metacaracteres (ver metacaracteres)
nueva línea (ver caracteres de nueva
línea) rango de (ver clases de
caracteres) espacio (ver caracteres de
espacio) pelar nrof f no imprimible,
91–93

circunflejo (ˆ)
ˆ = operador (asignación), 149
clases de caracteres y, 30, 37
operador de exponenciación,
148 como metacaracteres, 30,
43
en espacio de patrón multilínea,
107 close (), 232, 241
archivos / tuberías de cierre,
232, 241 closur e, 41
intercalar símbolos, 38 dos puntos (:)
para etiquetas, 128 columnas, salida
como, 243–246 guión combinado
(ejemplo), 331–332 mensaje
"comando ilegible", 17, 79 opciones
de línea de comando, gawk, 264
parámetros de línea de comando

matriz de 199–202
pasar al script, 166–168 sintaxis
de línea de comandos, 13, 359, 365
comandos, 21
awk, 375–381
ejecutando expresiones como,
233 gr ouping, 61, 79
generador basado en menús
(ejemplo), 235–239
múltiple, 21
400 Índice
ANCHO DE CAMPO variable (gawk), 266
Variable FS, 144, 151, 259
comandos (cont.)
sintaxis para, 360
(ver también bajo comando
específico) comentarios, 79, 142, 250,
368 versiones comerciales de awk, 272–
277 comparando

operadores de relación para, 157–


158 cadenas, 215–218
concatenación, 27, 148
declaraciones condicionales, 172-174,
256 constantes, 371
hexadecimal (tawk), 275
declaración continua, 180
líneas continuas, 265
conversión, 191–193
procesador de acr onym (ejemplo), caso
193–199, 214
números a cadenas, 153
variables CONVFMT, 153,
185 programas de copia, 247
cos (), 204
contadores para bucles, 177
esquema de referencia de
referencia cruzada, 2 csh
shell, 7, 17
funciones de personalización de
llaves (ver llaves), 218–226

re
d comando (ed), 9
comando d (sed), 59, 86, 121
comando D (sed), 87, 112
con comandos P y N, 114
fecha y hora (ver gestión del tiempo)
depuración, 246–251
comando de impresión con, 94
operador de reducción (- -), 149–150
definitoria
funciones, 218–226
variables, 147
comando eliminar (ver comando d; comando
D (sed))
declaración de eliminación (awk),
193, 259 eliminación
elementos de matriz, 193, 257,
259 líneas, 9, 87, 112
delimitadores, 152, 257
awk, 21, 143–144, 146
secuencias de escape, awk, 147, 255,
371 escapando (ver barra invertida)
OFS variable, 152-153
para expresiones regulares, 11,
81 subíndice-componente, 196
/ dev, 260, 267
dif f pr ograma, 62–64
operador de división (/), 148
do loop, 175–177
documentación, xv
para script masterindex,
signo de dólar 391 ($), 30
para la última línea de entrada, 59
como metacarácter, 43
en espacio de patrones
multilínea, 107 versiones DOS de
awk, xiv
punto (.) metacarácter, 28, 31, 40
expresiones regulares dinámicas,
256

mi
e (constante), 204
–E opción (sed), 16, 19
editor de ed, 8–12
ediciones, canalizadas, 74–77
egr ep pr ogram, 26
otras declaraciones (ver si las declaraciones)
final de
línea (ver $ (signo de dólar))
palabra (ver \ <, \> secuencias de escape)
PROCEDIMIENTO FINAL, 257
Procedimiento ENDFILE e (tawk),
273 error "Falta del delimitador
final", 17 variable ENVIRON, 199,
202 variables ambientales, 202 signo
igual (=)

= = (igual a) operador, 157 para imprimir


números de línea, 95
clases de equivalencia, 38
ERE (expresiones regulares extendidas),
38 ERRNO variable (gawk), 268 err o
mensajes, 261, 321
awk, 22
"Comando confuso", 17, 79 Error
"falta delimitador final", 17 sed, 17

err ors
depuración, 246–251
ortografía, encontrar (ejemplo), 278–
292 caracteres ESC en vi, 91
Índice 401

extrayendo contenidos de 70–74


nombres de archivo, especiales, 260
programas de ejemplo, xvi
obteniendo información sobre, 159–163
comando de intercambio (ver comando x
Intercalado, conversión, 110–112
(sed))
signo de exclamación (!), 59
! = (no es igual a) operador, 157
! ˜ (no coincide) operador, 145,
157–158
csh y, 7
operador lógico NOT, 158
operador tilde (˜), 145
declaración de salida, 181
exp (), 204
exponenciación, 148, 204, 255
* operador, 148 ˆ operador, 148
expresiones, 27–29, 371
awk, 147-151
ejecutándose como comandos, 233
regulares (ver expresiones
regulares)
expresiones regulares extendidas (ERE),
38 extensiones
awk común, 259–262
gawk, 263–272
mawk, 272
tawk, 273–276
grado de coincidencia, 50–54
extracción del contenido del archivo, 70–
74

F
–F opción (awk), 223, 264
–f opción (sed), 14, 18–19
–F opción (awk), 21, 144
factoriales, 179–180
fingiendo expresiones regulares dinámicas,
256
Preguntas frecuentes sobre awk, xvi
fflush (), 260
separadores de campo (ver delimitadores)
campos para registros awk, 20, 143–146,
367 para enmascarar como salida, 163–
166
Variable NF, 152, 154 ANCHO DE
CAMPO variable (gawk), 266
Protocolo de transferencia de archivos
(FTP), archivos xvii

cierre, 232, 241


edición múltiple, 69
múltiple, 241–243
ediciones múltiples a, 64–69
declaración del siguiente archivo, 261
lectura de, 96-104, 169-171, 229
guiones como (ver guiones) ruta
de búsqueda para, 264
gawk especial, 267
escribiendo a, 18, 96–104, 239–243
cuerdas fijas, 34
banderas, 81
g (global), 11, 80, 82
numérico, 80, 82
p (impresión), 80, 82
w (escribir), 80, 82
control de flujo, 106, 127, 257
ramificación, 128–130
d comando (sed), 87
n comando (sed), 95
tampones de lavado, 260
FNR variable, 152, 230
para bucle, 177-179, 184
para esteras
salida awk, 163–166
guiones awk, 367
índice (programa de ejemplo),
292–317 hora del sistema, 270
FPAT variable (tawk), 275
Fundación Padre Softwar (FSF), xiii
Variable FS, 144, 146, 151, 259
FTP (Protocolo de transferencia de archivos),
xvii
Ftpmail, xvii
palabra clave de función, 218
funciones, 257, 375
aritmética, 203–208, 258
cr comer biblioteca de, 223
gawk, 268
control de alcance (tawk), 274
eufórico, 208–218
tawk, 275
eufórica (gawk), 270–272
trigonométrico, 204
definido por el usuario, 218–226

sol
comando g (ed), 10
Comando G (sed), 119,
124 g bandera, 10, 80, 82
gawk (GNU awk), 252, 263–
272 funciones integradas,
268
402 Índice
mando (sed), 87–90 sentencias if, 172–
174 variable IGNORECASE (gawk),
gawk (GNU awk) 268 en operador, 188, 257
(continuación) variables
incorporadas, 268
archivos múltiples y,
241
generación de números aleatorios, 204–
208 gensub (), 269
guión suave, 346–347
obtener comando (ver comando G (sed))
función getline, 235–239
función getline, 227–232, 257
global

Dirección, 58–61
variables, 219
comando global (ver comando g (ed))
programa de glosario (ejemplo), 188 GNU
awk (ver gawk) proyecto GNU, xiii

GNU sed, mensajes de error,


18 gr eater que signo (>)
> = operador (mayor o igual que), 157
para redirección, 18, 62,
239 operador relacional,
157
gr ep utility, 11, 70
gr es pr ogram, 50
operaciones de agrupamiento (ver
paréntesis) comandos de agrupamiento
de sed, 61, 79 gsub (), 209, 212–214,
269

H
comando h (sed), 119–122
comando H, 119
constantes hexadecimales (tawk),
275 números hexadecimales, 147
caracteres especiales ocultos, 318
comando de retención, 124 espacio
de retención, 119–127

(ver también espacio de patrones)


guión (-)
- = operador (asignación), 149
- - operador (reducción), 149–150
clases de caracteres y, 36–37
operador de resta, 148

yo
registro, marca de tiempo con,
270 operador lógico AND (&&),
operador de incrustación (++), 158 operador lógico NOT (!), 158
índice 149–150 (), índice 209– operador lógico OR (||), 158
210, matriz, 182, 185
índice, formateo (programa de
ejemplo), 292–317
INIT procedur e (tawk),
273 input, 13
asignación a variables, 230
función getline, 227–232
comando de inserción (ver comando i (sed))
instrucciones, awk, 20
int (), 204
Archivos intercalados,
conversión, 110–112 E / S (ver
entrada; salida)

K
Kor n shell, xiv

L
l comando (sed), 90–93
etiquetas, 128
longitud (), 209, 211
longitud, cuerda, 211
menos que signo (<)
<= operador (menor o igual que), 157
operador relacional, 157
biblioteca de funciones,
223 limitaciones a awk,
251 que limitan la
extensión del partido, 52
direcciones de línea, 9, 12,
58, 78
imprimiendo con =, 95
editores de línea, 8
líneas
continuando después de
los descansos, 265
borrando, 9, 87
coincidencia sobre
múltiples, 44 coincidencia
inicio / final de, 43, 50
análisis (ver análisis)
lectura como entrada, 227–
232 terminación, 368
- -lint, - -lint-old options (gawk), 264 comando
de lista (ver comando l (sed)) variables locales,
219
log (), 204
Índice 403

matrices multidimensionales, 196–199


tawk y 274
bucles, 139, 174–180
matrices y, 182
bucle de entrada principal, 139
Comando ls en minúsculas (ver
mayúsculas) (UNIX), 159–163

METRO
script m1 (ejemplo), script mailavg
352–358 (ejemplo), bucle de entrada
principal 332–333, 139
script masterindex (ejemplo), 389–395
match (), 209, 215–218
operador de coincidencia (˜), 145,
157–158 coincidencia (ver
coincidencia de patrones)
matemáticas (ver funciones aritméticas;
operadores aritméticos; números)
mawk (Michael's awk), 252, 272 miembros
en matrices, 188 generador de comandos
basado en menús (examen-
ple), 235–239
metacaracteres, 26, 30
* (asterisco), 28, 39–41 \ (barra
invertida), 30–31 \ {\}, 30, 45
[] (paréntesis), 30, 34–
39 ˆ (circunflejo), 30, 37
$ (signo de dólar), 30,
43
. (punto), 28, 31, 40
+ (más), 30, 41, 141
? (signo de interrogación), 30,
41 | (barra vertical), 30, 46
awk expresión regular, 369
corchetes, 35 reemplazo, 82–
86
Expresión regular sed, 360 \
<(comienzo de la palabra),
50, 265 \> (fin de la palabra),
50, 265
–Mf opción (awk), 252
Michael's awk (ver mawk)
MKS awk, 272 MKS
Toolkit, xiv
modularización, 248
operador de módulo (%), 148
–Mr opción (awk), 252
NF variable, 152, 154, 230
caracteres no ingleses, 38
multilínea
Operador NOT (!), 158
comando eliminar (ver comando
NR variable, 152-153, 183, 230
D (sed))
nr off, despojar caracteres no imprimibles,
a juego, 44
91–93
siguiente comando (sed) (ver
Número de cadenas de repuesto, 84
comando N (sed))
patrón n espacio, 107-116
comando de impresión (ver comando P
(sed))
registros, awk, 154
múltiple
comandos awk, 21 rangos
de caracteres, 36
declaraciones
condicionales, 174
ediciones en un archivo,
64–69 archivos, 69, 241–
243

operador de multiplicación (*), 148

norte
n comando (sed), 95
Comando N (sed), 107–112 con
comandos P y D, 114
\ n secuencia de escape, 107
–N opción (sed), 19, 80
nombres
nombres de archivo,
especiales, 260, 267
archivos de script, 14
nawk, 13
declaraciones condicionales
anidadas, 174 caracteres de nueva
línea, 30, 43, 81, 265
. (punto) y, 31
espacio de patrón multilínea y, 107–
116 variable ORS para, 152, 155
en cadenas de repuesto, 82
variables RS para, 152, 262,
275
newsgr oup, awk, xvi
siguiente comando (sed) (ver
comando n (sed); comando
N (sed))
próxima declaración (awk),
181, 227 (véase también la
función getline)
declaración del siguiente archivo, 261
404 Índice

números para unir en columnas, 243–246 de


funciones aritméticas, 203–208, ahorro, 61
comparación 258 (operadores de Supresión, 19, 80
relación), prueba, 62–64
157-158 a la terminal, 260
convirtiendo a cuerdas, 153
factoriales, 179–180 PAGS
hexadecimal, 147, 275
comando p (sed), 94
limitaciones en, 251
Comando P (sed), 114–116
octal, 147
con comandos N y D, 114
precisión de salida, 165
bandera p, 80, 82
aleatorio, 204–208
truncando, 204 parámetros, función, 218–219
parámetros, secuencia de
banderas numéricas, 80, 82
comandos, 166–168 paréntesis
(), 14, 30, 46
O con texto de reemplazo, 84
obtención análisis, 13
código fuente awk, xiii campos de referencia, 20, 143
versiones comerciales awk, 272–273, 276 cadenas en elementos de matriz, 190,
ejemplos, xvi 259 patrones y direcciones, 9, 360
código fuente de gawk, 263 patrón n coincidencia, 5, 7, 14
código fuente mawk, 272 en awk, 141–143
programas de muestra, xvi closur e, 41
código fuente de sed, xiii extensión del partido, 50–54
números octales, 147 cuerdas fijas, 34
octothorpe (#) para comentarios, 80, 142, metacaracteres para (ver metacaracteres)
368 #n para suprimir la salida, 80 sobre múltiples líneas, 44
OFMT variable, 153, 165 frases, 44
OFS variable, 152-153 al inicio / final de las palabras,
operadores, awk, 374 50 (ver también expresiones
aritmética, 148 regulares)
asignación, 149 patrón n espacio, 57–58, 119
Booleano, 158 eliminar contenido de (ver comando d
postfix versus prefijo, 150 (sed))
relacional, 157-158 visualización (ver l comando (sed))
opciones, 13, 16 entrada de archivo en (ver lectura de archivos)
awk, 22 insertar y agregar comandos y, 89
combinando, 19 multilínea, 107-116
sed, 19 (ver también espacio de espera)
(ver también bajo opción específica) patrones ns, 10, 14, 369
Operador OR (||), 158 PC, xiv
orden de operaciones, 27 signo de porcentaje (%)
comandos en scripts, 56–58 % = (asignación) operador, 149
Variable ORS, 152, 155 para especificaciones de
salida, 13 formato, 164 operador de
tampón, lavado, 260 módulo, 148
dir ecting to files, 18, 239–243 secuencia de comandos de teléfono
Dirigiendo a tuberías, 240 (ejemplo), secuencia de comandos de
para esteras (awk), 163–166
328–330 frases (ejemplo), 133–136
frases, 44
ediciones canalizadas, 74–77
Índice 405

comando salir (ver comando q (sed))


comillas ('), 13, 16
tubería
cierre, 232
Dirigiendo salida a 240
limitaciones en, 251
lectura de entrada de, 230–
232 guión plpr (ejemplo), 348–
351 más (+)
Operador + = (asignación), 149
+ (incremento) operador, 149–150
operador de suma, 148
como metacaracteres, 30,
41 metacaracteres, 141
metacaracteres posicionales, 43
POSIX
awk (ver awk)
adiciones de clases de caracteres, 38,
370 clases de caracteres estándar, 38–
39 combinaciones de opciones,
estándar para, 19 expresiones regulares
estándar, 38–39 estándar para
etiquetas, 128
- Opción -posix (gawk), 264 operadores de
postfix, 150 prioridad, operación, 27, 374
modificador de precisión, 165 operadores de
efix, 150
comando de impresión (sed) (ver comando
p; comando P)
declaración de impresión (awk), 12,
139, 239 impresora (), 261, 321
declaración printf, 163–166,
239 impresión
para salida de coincidencia (awk),
163–166 direcciones de línea con =,
95
procedimientos, 14, 20 matriz
PROCINFO (gawk), 267
programación

awk, modelo para,


139 sed, puntas para,
77
pr ompts, 9

Q
q comando (sed), 104–105
signo de interrogación (?)
?: operador (condicional), 174, 256
como metacarácter, 30, 41
reglas, coincidencia (ver coincidencia de
patrones)
R
Comando r (sed), 96–104
rand (), 204–208
números aleatorios, 204–208
rango de caracteres (ver clases de
caracteres) lectura de comando (ver
comando r (sed)) lectura, 227–232
de los archivos, 96, 229
de om pipe, 230–232
script de readsource (ejemplo), 340–
345 variable RECLEN (tawk), 275
registros, awk, 20, 143–146, 367
matrices y, 182
longitud fija (tawk), 275
multilínea, 154
NF variable, 152, 154
NR variable, 152–153, 183,
230 RT variable (gawk), 266
separadores para (ver
delimitadores)
redir ection, 18, 62, 239
referir ences, xv
campos de referencia, 20, 143
expresiones regulares, 7, 26–54,
369 como constantes, 158
delimitadores para, 11, 81
dinámico, falso, 256
ed y 9
ejemplos de, 54
gawk extensiones a, 265
metacaracteres para (ver
netacaracteres) estándar POSIX para,
38–39 variable RS como, 262, 275

tawk y 274
unión de, 30, 46
escritura, 32–34
(ver también coincidencia de patrones)
- -re-intervalo opción (gawk), 264 expresiones
relacionales, 369 operadores relacionales,
157–158 metacaracteres de reemplazo, 82–86
número de guardados ed, 84
reemplazando texto, 3, 50–54
recuperando datos de archivos,
169–171 declaración de
devolución, 218, 221 sistemas de
control de revisión, 247

Variable RS, 152, 262,


275 Variable RT
(gawk), 266
406 Índice
función de clasificación (ejemplo),
221–226 programa de clasificación,
S 25
comando s (ed), 10 ordenar elementos de la matriz (tawk), 274
comando s (sed), 80–86
programas de muestra,
salida de guardado xvi, 18,
61, 239 control de alcance
(tawk), 274 scripts, 11, 13–
14, 366
depuración, 246–251
ejemplos de, 324–358
como archivos, 18
para colchoneta de 367
modularizante, 248
nombres para, 14
pasar parámetros a, 166–168 frase
(secuencia de comandos de ejemplo),
133–136 parar, sed (ver comando q
(sed))
ruta de búsqueda de archivos
awk, 264 buscar y reemplazar,
3
extensión coincidente,
50–54 sed, 3, 15–19
con awk, 23–25 sintaxis de
línea de comandos, 13, 359
comandos, 78–79, 106
sintaxis de, 78
(ver también bajo comando
específico) comandos para, 361–364
documentación para, xv ed versus, 11

err o mensajes, 17
obteniendo, xiii
opciones, 16, 19
(ver también bajo opción específica)
consejos de programación para, 77
referencia rápida, 359–364
metacaracteres de expresiones regulares,
360 punto y coma (;), 17, 21, 368 scripts de
shell (ver scripts)
conchas, 7, 17
(ver también bajo nombre de shell
específico)
sin (), 204
comillas simples ('), 13, 16 barras
(/)
/ = operador (asignación), 149
/ como delimitador, 11, operador de
división 81, 148 en comandos ed, 10
funciones de sustitución (awk), 212–214,
269 substr (), 209–210, 260
código fuente, obteniendo (ver obteniendo) operador de sustracción de
- -Opción de fuente (gawk), 264 caracteres subcadenas (ver cadenas) (-),
espaciales, 16, 79 salida de supresión 148, 19,
como delimitadores awk, 80
21, 146 como
concatenador de cuerda,
148
span, personaje, 30, 45
caracteres especiales,
16, 26
(ver también secuencias de
escape, awk;
metacaracteres)
nombres de archivo especiales, 260, 267
programa del corrector ortográfico
(ejemplo), 278–292 programa
spellcheck.awk, 382–389
split (), 190, 209,
260 sprintf (), 209
sqrt (), 204 srand (),
204–208 entrada / salida
estándar, 13 inicio de

línea (ver ˆ (circunflejo))


declaraciones de palabras (ver \ <,>
secuencias de escape), awk, 375
detener scripts de sed (ver comando q (sed))
editor de str eam, 3, 12, 74
str ftime (),
270 cuerdas,
28, 147
comparando, 215–218
concatenando, 148
convirtiendo de números, 153
funciones fijas (ver cadenas
fijas) para, 208–218 longitud
de, 211

limitaciones en, 251


análisis en elementos de matriz, 190,
259 funciones de sustitución (awk),
212–214,
269
subcadenas, 210
eliminación de caracteres no imprimibles,
91–93 sub (), 209, 212–214, 269
SUBSEP variable, 196
comando sustituto (ver comando s)
texto sustitutivo (sed), 10, 80–86
metacaracteres de reconexión,
82–86 (véase también el
comando s (sed))
Índice 407

–V opción (awk), 168, 236


variables, 147, 372
sintaxis matrices (ver matrices)
línea de comando, 13, 359, asignación de entrada a 230
365 comandos sed, 78
sistema (), 233–239
hora del sistema, 270
variables del sistema, 151–157, 199–202,
373 gawk, 268
systime (), 270

T
comando t (sed), 130
tawk, 273–276
ter minal, usuario, 260
líneas de terminación, 368
ter minator, record, 266
comando de prueba (ver comando t (sed))
pruebas
para membresía en matrices,
188 resultados, 62–64
bloques de texto, 125–127
Thompson Automation awk (tawk),
273–276
operador tilde (˜), 145, 157–158
gestión del tiempo, 270–272
tolower (), 209, 214 toupper (),
209, 214
- -tradicional opción (gawk), comando 264
transfor m (ver comando y
(sed))
script de transposición (ejemplo),
351–352 funciones trigonométricas,
204 números truncados, 204

U
metacarácter de unión, falta de, 46
unión de expresiones regulares, 30, 46
mayúsculas (ver mayúsculas)
funciones definidas por el usuario,
218–226 UUCP, xix

Secuencia de comandos uutot.awk


(ejemplo), 325–327

V
como patrones booleanos, 256
incorporado, 151–157, 258
gawk, 268
ambiente, 202
local versus global, 219
control de alcance (tawk), 274
sistema (ver variables del sistema)
verificar (ver pruebas)
versiones, awk, xiii, 255–259,
262–277 barra vertical (|)
como metacarácter, 30, 46
salida de tubería con 240
vi editor, 90–91 Videosoft VSAwk, 276
Visual Basic, awk para, 276

W
comando w (sed), 96-104
\ w secuencia de escape, 265
\ W secuencia de escape, 265
w bandera, 80, 82
while loop, 175
espacio en blanco (ver caracteres de espacio)
ancho, campo de salida, 165
Comando de escritura de
metacaracteres comodín (ver. (punto))
(ver comando w (sed)) escritura

de los archivos, 98-104


a archivos, 18, 96, 239–243
expresiones regulares, 32–34
guiones, 7
awk, 137-171
sed, 55–77
funciones definidas por el usuario,
218–226

X
x comando (sed), 120, 124, 126

Y
comando y (sed), 93
\ y secuencia de escape, 265
Sobre los autores
Dale Dougherty es presidente y CEO de Songline Studios, una filial de O'Reilly
& Asociados especializados en el desarrollo de contenido en línea. El editor fundador de la
serie Nutshell, Dale ha escrito, además de sed & awk, DOS Meets UNIX (con Tim O'Reilly),
Using UUCP & Usenet (con Grace Todino) y Guide to the Pick System.

Arnold Robbins, nativo de Atlanta, es un programador profesional y autor técnico. Ha


estado trabajando con sistemas UNIX desde 1980, cuando fue presentado a un PDP-11
con una versión de Sixth Edition UNIX. Ha sido un gran usuario de awk desde 1987,
cuando se involucró con gawk, la versión de awk del proyecto GNU. Como miembro del
grupo de votación POSIX 1003.2, ayudó a dar forma al estándar POSIX para awk.
Actualmente es el mantenedor de gawk y su documentación. La documentación está
disponible en la Fundación de Software Libre y también ha sido publicada por SSC como
Programación Efectiva AWK.

Colofón
Nuestro aspecto es el resultado de los comentarios de los lectores, nuestra propia
experimentación y la retroalimentación de los canales de distribución. Las cubiertas
distintivas complementan nuestro enfoque distintivo de temas técnicos, respirando
personalidad y vida en sujetos potencialmente secos.

El animal que aparece en la portada de sed & awk es un esbelto loris. Los loris son
primates nocturnos, que habitan en los árboles, sin cola, con pelaje grueso y suave y ojos
grandes y redondos. Se encuentran en el sur de la India y Ceilán, donde viven en los
árboles, rara vez descienden al suelo. Se ha observado a Lorises orinar en sus manos y
pies, se cree que hacen esto para mejorar su agarre mientras trepan y dejan un rastro de
olor.

Un animal pequeño, el loris delgado generalmente mide entre 7 y 10 pulgadas y pesa 12


onzas o menos. Subsiste con una dieta de frutas, hojas, brotes y pequeños animales que
captura a mano.

Edie Freedman diseñó la portada de este libro, utilizando un grabado del siglo XIX del
Archivo pictórico de Dover. El diseño de la portada se produjo con Quark XPress 3.3
utilizando la fuente ITC Garamond. Siempre que sea posible, nuestros libros usan
RepKover ™, una encuadernación plana duradera y flexible. Si el recuento de páginas
excede el límite de RepKover, se utiliza el enlace perfecto.
El diseño interior fue diseñado por Nancy Priest y Mary Jane Walsh. El texto fue
preparado en SGML usando el DocBook 2.1 DTD. La versión impresa de este libro fue
creada traduciendo la fuente SGML en un conjunto de macros gtroff usando un
filtro desarrollado en ORA por Norman Walsh. Steve Talbott diseñó y escribió el
conjunto de macros subyacente sobre la base de las macros GNU troff -gs; Lenny
Muellner los adaptó a SGML e implementó el diseño del libro. El formateador de texto
GNU groff versión 1.09 se utilizó para generar la salida PostScript. Las fuentes de texto y
encabezado son ITC Garamond Light y Garamond Book; La fuente de ancho constante
utilizada en este libro es Letter Gothic. Las ilustraciones que aparecen en el libro fueron
creadas en Macromedia Freehand 5.0 por Chris Reilley.

También podría gustarte