問題タブ [csplit]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
r - フィールドにセパレーターが埋め込まれている場合、cSplit が機能しない
cSplit を使用して、列を 3 つの個別の列に分割しています。区切り文字は「 / 」
ただし、私のフィールドの 1 つに「/」セパレーターが埋め込まれています。3 行目の 3 番目の要素は、分割後も "f/j" のままであるはずでした。
次の例で試してみると、余分な (4 番目の) 列が作成されます
5,000 行を超える元のデータ セットで試してみると、次のエラーが発生します。
fread のエラー (x、sep[i]、ヘッダー = FALSE):
3 列が必要ですが、行 2307 にはすべての列を処理した後のテキストが含まれています。fill=TRUE で再試行してください。別の理由として、sep='/' および/または '\n' 文字がアンバランスでエスケープされていない引用符内に埋め込まれている 1 つ以上のフィールドを区別する fread のロジックが失敗したことが考えられます。quote='' が役に立たない場合は、問題を報告して、ロジックを改善できるかどうかを確認してください。
bash - bashでファイルをコンテキストとサイズで分割
100MB の部分に分割する必要がある大きなファイルのセットがあります。私が直面している問題は、行が^B ASCII (または \u002) 文字で終了しているという事実です。
したがって、行末も含めて 100MB の部分 (明らかにプラスまたはマイナス数バイト) を取得できる必要があります。
サンプルファイル:
000111222333 ... nnn^b00011222333 ... nnn^b00011222333 ... nnn^b0001122333 ... nnn^b00011122233 ... nnn^b000111222333 ... nnn^b000111222333 ... nnn^ ..nnn^B000111222333...nnn^B000111222333...nnn^B000111222333...nnn^B000111222333...nnn^B000111222333...nnn^B000111222333...nnn^B000111222333...03131^B0 nnn^B000111222333...nnn^B000111222333...nnn^B000111222333...nnn^B000111222333...nnn^B
「線」のサイズはさまざまです。
私は split と csplit を知っていますが、この 2 つを組み合わせることについて頭を悩ませることはできませんでした。
行をそのまま維持する100MBのチャンクを実行する方法について何か提案はありますか? 補足として、行末を\nに変更することはできません。これは、 ^B間のデータが存在する場合は改行文字を維持する必要があるため、ファイルが破損するためです。