this post was submitted on 20 Feb 2024
-1 points (46.2% liked)

Linux

2341 readers
50 users here now

Shit, just linux.

Use this community for anything related to linux for now, if it gets too huge maybe there will be some sort of meme/gaming/shitpost spinoff. Currently though… go nuts

founded 1 year ago
MODERATORS
 

'Well it's only passing mv a list of--' yeah yeah yeah, I know, and that's why I'm calling bullshit. It should be massively harder to execute filenames. Even if 1970s decisions make that the eternal hideous default: the lack of any idiot-proof standard workaround is incomprehensible.

StackOverflow's full of competing one-liners and people pointing out how each one is considered harmful. The least-skeezy options use exec. That sentence should make anyone recoil in horror.

This is not a filename problem. This is a tool problem. If a single printable character is going to silently expand into a list of names, then for god's sake, having it put each name in quotes should be fucking trivial.

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

Can you run printf %s\\n *.jpg in that same directory and share the result? I'm really intrigued. If there's private information in there, I'd be satisfied with just a handful of lines showing the issue with private info replaced with ****s

Edit: also run alias mv to check whether you have an alias messing things up

[–] [email protected] 2 points 8 months ago

bash: alias: mv: not found

printf %s\\n *.jpg is just a list of filenames on newlines. There's 75,000 of them. You'll have to take my word for it.

Fortunately, GenderNeutralBro's aside about using ./* instead of * works as expected. Could have been files beginning with _-. None begin with -, exactly.