Preguntas etiquetadas con awk

Un lenguaje de escaneo y procesamiento dirigido por patrones.



6
Procese el archivo / etc / passwd para enumerar todos los usuarios cuya carpeta de inicio se encuentra en / home
Tengo un ejemplo de archivo / etc / passwd como este: tom:x:1000:1000:Work:/home/tom:/bin/bash george:x:1000:1000:Work:/home/george:/bin/bash bla:x:1000:1000:Work:/home/bla:/bin/bash boo:x:1000:1000:Work:/home/boo:/bin/bash bee:x:1000:1000:Work:/root/list:/bin/bash Estoy tratando de enumerar todos los usuarios con una carpeta de inicio /home/. escribí cat ~/Desktop/e.txt |awk -F ":" '{if ($6 ~/^/home/) print $1;}' donde e.txt es el texto que copié aquí. Entiendo que …

2
Gawk en el lugar y stdout
¿Es posible usar gawkla -i inplaceopción y también imprimir cosas stdout? Por ejemplo, si quisiera actualizar un archivo, y si hay algún cambio, imprima el nombre del archivo y las líneas cambiadas, stderrpodría hacer algo como find -type f -name 'myfiles' -exec gawk -i inplace '{if(gsub(/pat/, "repl")) { print FILENAME …
10 awk  gawk 

2
Fusionar columnas de dos archivos separados
¿Cómo crear un nuevo archivo fusionando columnas selectivas de dos archivos separados usando awk? Sin estropear el orden de los elementos de AMBOS archivos. Ejemplo: el archivo 3 puede contener la columna 1,2,3 del archivo 1 y la columna 4 del archivo 2. File 1 A 23 8 T A …


1
escapar de un solo punto con doble barra invertida - awk
El libro "Programación efectiva de awk" tiene un ejemplo sobre la división de campos. Aquí está el ejemplo: Si desea que los campos estén separados por un punto literal seguido de cualquier carácter individual, use ‘FS = "\\.."’. ¿Por qué es doble barra invertida? no debería ser \..?

4
Ordenar campos en línea
Estoy tratando de ordenar dentro de una línea de entrada sobre un número desconocido de campos: Entrada: ab bc bc ab cd ef bc bc cd ef cd bc ab ef ab bc cd gh Salida: ab bc ab bc bc cd ef bc cd ef ab cb cd ab …

1
convertir archivos CSV a XLS en Linux
El siguiente script de Perl puede convertir un archivo CSV a un archivo XLS el problema es que necesito instalar en la máquina Linux del cliente muchos módulos Perl para ejecutar este script Perl, y en realidad no puedo porque la máquina Linux es la máquina del cliente (no se …
10 linux  bash  shell-script  awk  perl 

4
awk asignar a múltiples variables a la vez
Estoy tratando de extraer dos valores numéricos de una cadena y asignarlos a variables usando awk( gawkes lo que estoy usando específicamente). Quiero extraer los números de versión mayor y menor de una cadena de versión tmux en awkvariables, por ejemplo: entrada tmux 2.8:; maj == 2ymin == 8 entrada …
9 awk  gawk 

1
awk elimina inesperadamente el punto de la cadena
Quiero agregar una columna (segundo lugar) en un .csvarchivo y quiero que los valores de esa columna sean cadenas y se citen; El siguiente comando agrega la columna pero sin comillas: awk -F"," 'BEGIN { OFS = "," } {$2="2.4.0"; print}' test.csv > output.csv El siguiente enfoque incorpora las comillas, …
9 awk  csv 

3
¿Cómo capturar la primera dirección IP de un comando ifconfig?
¿Cómo capturar la primera dirección IP que proviene del ifconfigcomando? ifconfig -a enw178032: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500 inet 100.14.22.12 netmask 255.255.0.0 broadcast 100.14.255.255 inet6 fe80::250:56ff:fe9c:158a prefixlen 64 scopeid 0x20<link> ether 00:10:56:9c:65:8a txqueuelen 1000 (Ethernet) RX packets 26846250 bytes 12068811576 (11.2 GiB) RX errors 0 dropped 58671 overruns 0 frame 0 TX …
9 linux  bash  awk  sed  ifconfig 


5
awk sed si declaración
Estoy tratando de agregar 0 al principio, SI hay un "." en el segundo caracter de esa línea. No pude combinar estos dos; awk '{ print substr( $0, 2, 1 ) }' file.txt mostrando el segundo personaje sed -ie "s/.\{0\}/0/" file.txt agregando un cero al principio. Debería haber un "si …

1
Cómo obtener filas cuya enésima columna contiene la enésima columna
Tengo un archivo CSV que contiene dominios y correos web, como este: site1.com,mail.site1.com site2.com,testmail.com site3.com,mx.site3.com site4.com,smtp.site4.com site5.com,foomail.com site6.com,barmail.com site7.com,webmail.site7.com site8.com,01mx.site8.com site9.com,foobarmail.com site10.com,mx-smtp222.site10.com Quiero obtener filas donde la columna de webmails contiene la columna de dominios de la misma fila. Para el ejemplo anterior, la salida debería ser: site1.com,mail.site1.com site3.com,mx.site3.com site4.com,smtp.site4.com …

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.