大きな.sql
があります SELECT
でいっぱいのファイル SQLServerデータベースに挿入したいデータを含むステートメント。基本的に、ファイルの内容を一度に100行取得して、残りを実行するために設定したコマンドに渡す方法を探しています。
基本的に、私はsplit
を探しています stdout
に出力されます 、ファイルではありません。
また、WindowsでCygWinを使用しているため、ツールの完全なスイートにアクセスできません。
承認された回答:
これを行う最も簡単な方法は次のとおりです。
while IFS= read -r line; do
{ printf '%sn' "$line"; head -n 99; } |
other_commands
done <database_file
read
を使用する必要があります ファイルの終わりに達したときに停止する他の方法がないように見えるため、各セクションの最初の行。詳細については、以下を参照してください:
- パイプが空かどうかを確認し、空でない場合はデータに対してコマンドを実行します
- あるプロセスから別のプロセスに出力をパイプするが、最初のプロセスに出力がある場合にのみ実行するにはどうすればよいですか?