Faça:
sed 's/^./[&]/'
-
^.
corresponde ao primeiro caractere da linha - Na substituição,
&
é expandido para a correspondência, estamos colocando a correspondência com[]
Exemplo:
% sed 's/^./[&]/' <<<'foobar'
[f]oobar
Digamos que eu tenha uma string foobar
Como posso produzir facilmente algo como [f]oobar
sem substituir especificamente f
por [f]
?
Caso de uso: aceito a entrada do usuário de um nome de processo e quero mostrar os detalhes do processo enquanto elimino o grep
.
Em apenas Bash, com expansão de substring:
$ pat=foobar
$ echo "[${pat:0:1}]${pat:1}"
[f]oobar
v=foobar
echo "[${v%${v#?}}]${v#?}"
[f]oobar
Tags text-processing sed