this post was submitted on 18 Nov 2023
567 points (95.8% liked)

Piracy: ꜱᴀɪʟ ᴛʜᴇ ʜɪɢʜ ꜱᴇᴀꜱ

54627 readers
482 users here now

⚓ Dedicated to the discussion of digital piracy, including ethical problems and legal advancements.

Rules • Full Version

1. Posts must be related to the discussion of digital piracy

2. Don't request invites, trade, sell, or self-promote

3. Don't request or link to specific pirated titles, including DMs

4. Don't submit low-quality posts, be entitled, or harass others



Loot, Pillage, & Plunder

📜 c/Piracy Wiki (Community Edition):


💰 Please help cover server costs.

Ko-Fi Liberapay
Ko-fi Liberapay

founded 1 year ago
MODERATORS
 
you are viewing a single comment's thread
view the rest of the comments
[–] [email protected] 27 points 1 year ago* (last edited 1 year ago) (1 children)

It's a way bigger pain in the ass than people think it is. I remember having to parse output from a tool for work that had tons of output in tabular format, mixed with normal sentence like strings. JSON, YAML, or XML outputs weren't available so I had to do a nasty mess of grep, awk, cut, and head/tail, to get what I wanted. My first attempt was literally counting the characters so I could cut out exactly what I needed, but as we all know, hardcoding values is a recipe for headaches later on.

[–] [email protected] 34 points 1 year ago* (last edited 1 year ago) (4 children)

Here's a horror story from literally yesterday. We have been fighting a system for a client for weeks and it has been a nightmare. Our clients just told us that they outsourced some of their work to an Indian outfit but that outfit is unfamiliar with Linux and doesn't know how to edit text files so they have been downloading the files to their Windows machines, editing them in Windows, then uploading the contaminated text files back into Linux. None of them, not our client nor the outfit they hired, understood why this was a problem. We have no idea what files are affected and we won't know until they fail because they obviously did not keep track of what they touched.

EDIT: I'm being intentionally vague.

[–] [email protected] 16 points 1 year ago (1 children)

Haha this is up there with having to explain why opening a csv in Excel and then saving means that I don't want the file.

[–] [email protected] 8 points 1 year ago (1 children)

I will never forgive excel for automatically converting all of my dates to some weird ass format, or stripping single quotes randomly, or something other BS that they do for no reason

[–] [email protected] 4 points 1 year ago

My absolute favourite is stripping leading zeroes from any text that looks like a number, then displaying it in scientific notation. But we get Copilot, so it balances out, right?

[–] [email protected] 9 points 1 year ago (2 children)

If this is about line endings, surely a simple shell or python script could correct them?

[–] [email protected] 9 points 1 year ago
[–] [email protected] 3 points 1 year ago* (last edited 1 year ago) (1 children)

Does windows add an extra character at the end that gets converted to new line on linux? Because the other day I were copying a script and after pasting it an extra line was added after every single line, even the empty lines.

how it looked when I copied it:

bla
bla

bla

what it turned into:

bla

bla



bla
 
[–] [email protected] 11 points 1 year ago (1 children)

Windows uses CR LF (carriage return, line feed), whereas Unix just uses LF. For added fun, macs use CR.

[–] [email protected] 5 points 1 year ago (1 children)

For added fun, macs use CR.

This used to be true, for sure, but I thought this changed with OS X (which is essentially PrettyBSD) ?

[–] [email protected] 4 points 1 year ago

You're right. Notepad++ still lists macs as using CR for their EOL conversion tool, so I didn't realize.

[–] [email protected] 8 points 1 year ago

The only reasonable response to this behavior is disproportionate violence

[–] [email protected] 7 points 1 year ago

You can just grep for carriage returns followed by newlines, grep -Pirn '\r\n$' /path/to/whatever. It'll identify all your problematic files.