はい、奇妙に聞こえることを知っています。順次分割とバイナリ分割は混在させることはできません。シーケンスがファイル自体内のバイトオフセットでない限り...
私はそれをbashスクリプトで使用していますdd
。 8GBファイルの3〜9秒の検索と検索時間があります。それで動作します(しかし私が知っているよりも遅いです)…私はこのホイールを磨きたくありません。私は単にbashで練習するのが好きです(プロジェクトを持つことが言語を学ぶための最良の方法です)。 C/++などではこれがとても簡単だと思います。他の例(特にbashの例)も見たいです。
答え1
すべてのデフォルトのテキスト処理ユーティリティはフィルタとして機能するように設計されており、ほとんどは入力をストリームとして処理するように設計されています(つまり、入力の一部を読み取り、処理し、その出力を書き、繰り返し)。dd
構文と提供するオプションの点で少し珍しいです。dd
唯一のシェルインターフェイスですlseek
、ご存知のようにおっぱいです。これに達したら、PerlやPythonなどのより強力なスクリプト言語に切り替える必要があります。