GNU/Linux >> Tutoriales Linux >  >> Linux

¿Cuál es la forma correcta de insertar una pestaña en sed?

Como dicen la mayoría de las respuestas, probablemente tab literal char es el mejor.

info sed diciendo "\t no es portátil. " :

...
'\CHAR'
    Matches CHAR, where CHAR is one of '$', '*', '.', '[', '\', or '^'.
    Note that the only C-like backslash sequences that you can
    portably assume to be interpreted are '\n' and '\\'; in particular
    '\t' is not portable, and matches a 't' under most implementations
    of 'sed', rather than a tab character.
...

Simplemente puede usar el sed i comando correctamente:

some_command | sed '1i\
text    text2'

donde, como espero que sea obvio, hay una pestaña entre 'texto' y 'texto2'. En MacOS X (10.7.2) y, por lo tanto, probablemente en otras plataformas basadas en BSD, pude usar:

some_command | sed '1i\
text\ttext2'

y sed tradujo el \t en una pestaña.

Si sed no interpretará \t e insertar pestañas en la línea de comando es un problema, cree un script de shell con un editor y ejecute ese script.


Suponiendo que bash (y tal vez otros shells también funcionen):

some_command | sed $'1itext\ttext'

Bash procesará escapes, como \t , dentro de $' ' antes de pasarlo como argumento a sed.


Linux
  1. ¿Cómo insertar texto antes de la primera línea de un archivo?

  2. ¿Cuál es la forma más sencilla de SSH usando Python?

  3. ¿Cuál es el significado de POSIX?

  4. ¿Cuál es la forma correcta de iniciar un servicio mongod en linux/OS X?

  5. ¿Cómo insertar un texto al principio de un archivo?

¿Qué es el Shell en Linux?

¿Cuál es la forma más fácil de liberar espacio en un disco duro?

¿Cuál es la forma más rápida de eliminar todos los archivos y subcarpetas de un directorio?

¿Cuál es la forma más rápida de ejecutar un script?

¿Qué es el enlazador de oro?

¿Cuál es la forma más ligera de renderizar gráficos Gentoo?