On 26Oct2020 09:45, Chris Angelico <ros...@gmail.com> wrote: >On Mon, Oct 26, 2020 at 8:44 AM Cameron Simpson <c...@cskk.id.au> wrote: >> On 24Oct2020 13:37, Dan Sommers <2qdxy4rzwzuui...@potatochowder.com> wrote: >> >Spaces in filenames are just as bad, and much more common: >> >> But much easier to handle in simple text listings, which are newline >> delimited. >> You're really running into a horrible behaviour from xargs, which is one >> reason why GNU parallel exists. > >I don't consider the behaviour horrible, and xargs isn't the only >thing to do this - other tools can be put into zero-termination mode >too.
I'm not talking about -print0 and -0, which I merely dislike as a hack to accomodate badly named filenames, but xargs' non-0 behaviour, which splits on whitespace. Instead of newlines. That pissed me off enough to write my own. [...] >If you actually DO need to read null-terminated records from a file >that's too big for memory, it's probably worth just rolling your own >buffering, reading a chunk at a time and splitting off the interesting >parts. It's not hugely difficult, and it's a good exercise to do now >and then. Aye. That's what my cs.buffer.CornuCopyBuffer class does for me: https://pypi.org/project/cs.buffer/ aimed particularly at parsing binary data easily (it takes any iterable of bytes, and has a few factories to start from a file etc). Parsing a NUL terminated string from binary data isn't too bad given such a thing. Cheers, Cameron Simpson <c...@cskk.id.au> _______________________________________________ Python-ideas mailing list -- python-ideas@python.org To unsubscribe send an email to python-ideas-le...@python.org https://mail.python.org/mailman3/lists/python-ideas.python.org/ Message archived at https://mail.python.org/archives/list/python-ideas@python.org/message/2G5RBMJYUWKFC7R5CO2VKODKJ2GZPA2H/ Code of Conduct: http://python.org/psf/codeofconduct/