Eu jogaria sed diretamente após sort e teria w rite os arquivos como você deseja de uma só vez:
wc -l /group/book/four/word/*|sort -n |
sed 'w ./not_as_yet_touched.txt
1,2s/^[0-9 ]*//w ./first_two_lines_without_line_numbers_or_leading_spaces.txt
s|.*/||w ./everything_up_to_first_slash_trimmed.txt'
Como escrito, sed continuará a imprimir automaticamente os resultados da execução de todos os comandos acima, mas os resultados mostrados no terminal (ou onde stdout for) refletirão fielmente o conteúdo do último arquivo. Os outros dois são w ritten em momentos diferentes durante o ciclo de linha de sed e, portanto, seu conteúdo será diferente.
Sobre od embora ... hmmm ... od não delimita os dados tanto quanto os despejam . Você pode usar od em combinação com outro filtro (como sed ) para limpar as partes da linha conforme solicitado, mas sem uma contagem de bytes específica e regular entre / caracteres , você provavelmente não terá muito uso para isso. Claro, o comando final lá em cima deve lidar com isso de qualquer maneira.