Combine log files without changing existing lines
Select 2–100 UTF-8 text, Markdown, JSONL, CSV, TSV or log files in the intended order. The output is one TXT file. Existing bytes, whitespace and line endings are retained; only one LF is inserted at a boundary where the previous file has no final line break. For example, joining error-01.log and error-02.log preserves their original records without merging the last and first lines.
Not a CSV or TSV table merge
The tool concatenates text; it does not compare column names, deduplicate CSV headers or reconcile different delimiters. If two CSV files each contain a header, both headers remain in the result. Use CSV to TSV for delimiter conversion or split text files to create numbered byte-exact parts.
Safety limits and encoding checks
Input is limited to 20 MiB per file and 40 MiB combined. Every file must be valid UTF-8 without NUL bytes; a BOM is permitted only at the start of the first file. All sizes are checked before reading content. Cancellation is checked between file reads and before producing a download, but cannot instantly interrupt a file read already in progress.
When to repair encoding first
For legacy encodings or corrupted characters, use repair text encoding before joining. Do not assume that concatenating JSONL logs will validate each JSON object: this tool preserves text, not a structured-data schema.