Você pode usar um loop de uma linha como este:
for f in file1 file2 file3; do sed -i "s/$/\t$f/" $f; done
Para cada arquivo na lista, isso usará sed
para anexar ao final de cada linha uma guia e o nome do arquivo.
Explicação:
- Usando o sinal
-i
comsed
para realizar uma substituição no local, sobrescrevendo o arquivo - Execute uma substituição com
s/PATTERN/REPLACEMENT/
. Neste exemplo, PATTERN é$
, o fim da linha, e REPLACEMENT é\t
(= a TAB), e$f
é o nome do arquivo, da variável de loop. O comandos///
está entre aspas duplas para que o shell possa expandir as variáveis.