Linha vazia aparece ao mesclar conteúdo de arquivo diferente no shell script

1

Eu tenho escrito shell script para mesclar o conteúdo do arquivo diferente Eu criei diretórios f1, f2, d1, d2 e arquivos sob eles, eu preciso mesclar o conteúdo de todos os arquivos: comand is

find /home/ah5024331/f1 /home/ah5024331/f2  /home/ah5024331/d1  /home/ah5024331/d2 /home/ah5024331/f1 /home/ah5024331/f2  /home/ah5024331/d2  -type f -exec cat {} \; -exec echo \; > /home/ah5024331/op.txt

A saída é:

--this is new text from f1 ----

--this is text from f2 ----
--this is new text from d1 ---
---this is new text from d2 ---
--this is new text from f1 ----

--this is text from f2 ----
---this is new text from d2 ---

após o conteúdo do arquivo f1, ele adiciona uma linha vazia. Eu quero conteúdo mesclado sem qualquer linha vazia no meio. Quais são as mudanças que preciso fazer no comando acima? Qualquer ajuda seria apreciada com antecedência.

    
por user 22.06.2015 / 13:24

1 resposta

0

Se rodando no Linux, o seguinte deve funcionar. Deixe-me saber em qual sistema operacional Unix você está executando este script.

find /home/ah5024331/f1 /home/ah5024331/f2  /home/ah5024331/d1  /home/ah5024331/d2 /home/ah5024331/f1 /home/ah5024331/f2  /home/ah5024331/d2  -type f -exec cat {} \; -exec echo -n "" \; > /home/ah5024331/op.txt
    
por 23.06.2015 / 14:16