¿Cómo puedo usar awk o sed para imprimir una cadena solo hasta el primer carácter de subrayado?
Antes de:
host100_044 2
host101_045 2
host102_046 2
Después:
host100
host101
host102
unix
bash-scripting
unix-utils
Rubstr
fuente
fuente
Otra alternativa para sed:
Si los tiene en un archivo, puede llamarlo de la siguiente manera;
fuente
Salida:
Con nuevas líneas:
Salida:
fuente
Utilizando
sed
:Usando la
sed
opción de edición en el lugar,fuente
awk
solución ya está publicada (ycut
probablemente sea la mejor en este caso), ya que preguntó por élsed
, pero me ganaste con segundos :-). Incluso puede quitar el$
, ya que coincidirá.*
con el final de la línea de forma predeterminada.Las
-F'_'
instruccionesawk
para utilizar guiones bajos como delimitadores de campo. Elawk
script en sí solo imprime el primer campo.fuente
Esto imprimirá la salida antes de
_
:sed 's/_.*//' -filename
fuente