-
Agrupe o cabeçalho em cada um dos arquivos. Estou assumindo que
Aé um arquivo desde que você mencionoucat. Em caso afirmativo, você pode simplesmente copiar:for file in */*.csv; do cp A "$file"; doneSe
Afor uma variável, façafor file in */*.csv; do echo "A" > "$file"; doneAlternativamente, se tudo que você precisa é da primeira linha, você pode colocar isso em cada arquivo. Dessa forma, também funcionará para diferentes cabeçalhos:
for file in */*.csv; do head -n "$file" > /tmp/foo && mv /tmp/foo "$file"; done -
Existem muitas maneiras de excluir o último X número de linhas dos arquivos. Aqui estão três:
-
head, altere X para quantas linhas você quiser manter:for file in */*.csv; do head -n X $file > /tmp/foo && mv /tmp/foo "$file"; done -
awk, altere o123para quantas linhas você quiser manter:for file in */*.csv; do awk 'NR<=123' "$file" > /tmp/foo && mv /tmp/foo "$file"; done -
perl, altere o123para quantas linhas você quiser manter:for file in */*.csv; do perl -ne "next if $.>123;print' "$file" > /tmp/foo && mv /tmp/foo "$file"; done
-