Entonces, me dijeron que hiciera lo last > lastloggedinque crea un archivo que muestra el último inicio de sesión de las clases desde el último reinicio del sistema, y ahora me piden que escriba un script Awk que se llama myawkque cuenta / determina cuántas líneas lastloggedincontienen la cadena CFS264.
hice grep -c CFS264 lastloggedin
text-processing
awk
scripting
TayshaunS
fuente
fuente

awk? Si no, simplemente podrías usarlogrep -c CFS264 lastloggedin | wc -l.grep -c (something) (something) | wc -lserá siempre la producción de "1".Respuestas:
Para comenzar, puede usar
awkpara buscar líneas en un archivo que contenga una cadena como esta:Los bits en el
{ .... }serán los comandos necesarios para contar el número de líneas con esa cadena. Para confirmar que lo anterior está funcionando, puede usar unprint $0allí para simplemente imprimir las líneas que contienen la cadena de búsqueda.En cuanto al conteo, si busca "contador awk", se encontrará con este SO Q&A titulado: usar awk para contar el número de registros . El método que se muestra allí sería suficiente para lo que describe:
Ejemplo
NOTA: No dice a qué campo pertenece CFS264 en la
lastsalida. Suponiendo que es un nombre de usuario, puede restringir aún más elawkcomando para buscar solo ese campo de la siguiente manera:fuente
awk.El siguiente ejemplo cuenta las veces que se me menciona sin necesidad del
lastloggedinarchivo:Si insiste en usar o se ve obligado a usar el
lastloggedinarchivo, puede hacerlo de esta manera:Se usa
$1~/some_chars/para obtener todos los nombres de usuario que contienen los caracteres dados o$1~/^prefix/para hacer coincidir solo los nombres que comienzan conprefix:PD:
Escanee
man awkpara obtener más pistas ... ;-)awkes muy gratificante: puedes hacer muchas cosas después de muy poco tiempo de aprendizaje ...fuente
La última lata incluye los inicios de sesión de los usuarios de reinicios anteriores. Como tal, lo siguiente solo imprimirá a los usuarios desde el último reinicio:
La primera parte del comando awk especifica un rango: comience desde la primera fila hasta que la primera columna se 'reinicie'.
fuente