Com um BSD / GNU sed
:
find "/dir/folder" -name "*.dat" -exec sed -se1d {} + >> "/dir/folder/table.txt"
... que instrui a tratar todos os arquivos de entrada separadamente, e para cada um deles d
elete a linha 1
st.
Se o cabeçalho ainda não estiver no table.txt, você deve primeiro colocá-lo lá:
set -- /dir/folder/*.dat
head -n1 <"$1" >>/dir/folder/table.txt
find ...
Se todas as correspondências *.dat
estiverem em diretórios filhos, isso não funcionará.
{ find /dir/folder -name \*.dat -exec \
sh -c 'head -n1 "$0"; kill "$PPID"' {} \;
find /dir/folder -name \*.dat -exec sed -se1d {} +
} >>/dir/folder/table.txt
Isso deveria.