つまり、各.csvファイルに対して次のことを行います。
ファイルの最初の行に「HEADER」文字列が含まれていることを確認してください。紛失した場合は、次の操作を行います。
- 「エラー:HEADERレコードがありません」と表示されます。
- ファイル名を.csvから.headに変更します。
- 次のファイルに進む
答え1
for f in *.csv; do
IFS= read -r line < "$f" &&
case $line in (*HEADER*) continue; esac
printf >&2 'ERROR: Missing HEADER record for "%s"\n' "$f"
mv -- "$f" "${f%.*}.head"
done
答え2
努力する:
for _file in *.csv
do
if ! grep -q 'HEADER' <(head -n 1 -- "$_file")
then
echo >&2 "ERROR: Missing HEADER record for $_file"
# mv -- "$_file" "${_file%.*}.head"
echo "$_file" "${_file%.*}.head"
fi
done
lineを使用してecho
正常に動作していることを確認し、すべてが正常な場合はmv
lineを試してください。