Comme la plupart des réponses le disent, probablement littéral tab
le personnage est le meilleur.
info sed
disant "\t n'est pas portable. " :
...
'\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.
...
Vous pouvez simplement utiliser le sed
i
commande correctement :
some_command | sed '1i\
text text2'
où, comme j'espère que c'est évident, il y a un onglet entre 'text' et 'text2'. Sur MacOS X (10.7.2), et donc probablement sur d'autres plates-formes basées sur BSD, j'ai pu utiliser :
some_command | sed '1i\
text\ttext2'
et sed
traduit le \t
dans un onglet.
Si sed
n'interprétera pas \t
et l'insertion d'onglets sur la ligne de commande est un problème, créez un script shell avec un éditeur et exécutez ce script.
En supposant que bash (et peut-être que d'autres shells fonctionneront aussi) :
some_command | sed $'1itext\ttext'
Bash traitera les échappements, tels que \t
, à l'intérieur de $' '
avant de le passer comme argument à sed.