Supondo que o contexto é
some-command | sed 's/ /':'/' | sed 's/ /-/' > file.list
Vamos desmembrá-lo, peça por peça. Suponha, por exemplo, que some-command
seja echo 'test of the command'
.
Em seguida, sed 's/ /':'/'
substitui o primeiro espaço por :
.
test of the command
→ test:of the command
Depois disso, sed 's/ /-/'
substitui o novo primeiro espaço por -
test:of the command
→ test:of-the command
Esta transformação é aplicada em cada linha da saída de some-command
.
Como mencionado por @Philippos nos comentários, não está claro por que :
não está listado aqui. Seria melhor como
some-command | sed 's/ /:/' | sed 's/ /-/' > file.list
Mas sed
não está restrito a uma única substituição por instância. Então, melhor ainda é
some-command | sed 's/ /:/; s/ /-/' > file.list