¿Cortar delimitado con espacio sin escape?

¿Cortar delimitado con espacio sin escape?

Tengo un archivo con texto en el formato de:

User\ Name My\ Password

Tenga en cuenta que en realidad se trata de un archivo de 2 columnas, donde las columnas contienen espacios con escape.

cut -d' ' -f2produce Namepero quiero producir My Password.

¿Es posible utilizar cuty delimitar únicamente en función de espacios sin escape? Si no, ¿qué comando alternativo puedo usar?

Respuesta1

Yo sugeriría GNUgrepacercarse:

Muestra input.txt:

User\ Name My\ Password
first\ field second\ field

Corta el segundo campo de2 columnasarchivo:

grep -Po '[^\\]\x20\K.*' input.txt

La salida:

My\ Password
second\ field

O lo mismo consed:

sed 's/.*[^\\]\x20\(.*\)/\1/' input.txt

----------

La parte crucial del patrón de expresiones regulares es [^\\]\x20que coincide con un espacio \x20(código hexadecimal de espacio) si está precedido por cualquier carácter, excepto la barra invertida de escape.[^\\]

información relacionada