this post was submitted on 30 Sep 2024
115 points (94.6% liked)

196

16490 readers
2712 users here now

Be sure to follow the rule before you head out.

Rule: You must post before you leave.

^other^ ^rules^

founded 1 year ago
MODERATORS
 

! A screenshot of a Linux terminal showing some packages being installed. One of the package is named "fribidi". This name rhymes with something that evokes visceral horrors beyond comprehension.
An image of a Vietnam war soldier having flashbacks is superimposed !<

you are viewing a single comment's thread
view the rest of the comments
[โ€“] original_reader@lemm.ee 25 points 1 month ago (4 children)

Somewhat OT, but some commands can be annoyingly inconsistent and/or confusing as well. Examples:

cp requires the -r flag to copy directories recursively, while mv does not need any additional flags.

find searches for files in real-time based on various criteria, while locate uses a pre-built database to find files quickly. I know they have separate use cases, but for beginners...

The zip syntax is straightforward for both archiving and compressing. For example,ย zip archive.zip file1 file2. The tarsyntax on the other hand is confusing, especially when adding compression. I mean, look at this bad boy: tar -czvf archive.tar.gz file1 file2.

Wonder if I should post this under !unpopularopinion@lemmy.world. ๐Ÿ˜„

[โ€“] Badabinski@kbin.earth 21 points 1 month ago (2 children)

find is also just a fucking mess in terms of UX. The fact that the ordering of positional and optional arguments are so strongly tied to each other has always driven me fucking bonkers. Nowadays, I install fd everywhere I can and tell people to switch to it and never look back. locate is nice and all, but I always forget to update the db and I don't want it populating in the background.

tar doesn't bug me as much, provided you use unix or GNU style options. tar xvf foo.tar is just icky and less readable than tar -xvf foo.tar. I will happily concede that it's not very ergonomic though. I used to rely on things like dtrx (short for Do The Right eXtraction) because it was such a pain to remember the options for tar/unrar/unzip/7z.

[โ€“] original_reader@lemm.ee 3 points 1 month ago

You reminded me of fd. Thank you!

[โ€“] programmer_belch@lemmy.dbzer0.com 3 points 1 month ago (1 children)

I got accustomed to the options for tar and 7z. for find, I just pipe it to grep or use less to search for something. It just takes time the first time you run it

[โ€“] Badabinski@kbin.earth 4 points 1 month ago

Ditto for tar and unrar, although I deal with .7z so infrequently that I have to look at the manual every time I use it.

find's fucked up argument handling really becomes a problem for me when I want to use it in a complex pipeline or when using the -exec flag. I've spent far less time debugging in those situations since switching to fd. I won't yuck the yum of folks who are comfortable and like find, but I feel that we probably have more approachable alternatives for new users.

[โ€“] pmk@lemmy.sdf.org 15 points 1 month ago (2 children)

I learned the proper meaning of tar flags a long time ago, but then I accidentally saw a post somewhere describing "czf" and "xzf" as acronyms in german accent: "Create Ze File!" and "Xtract Ze File!" and now everytime I use tar in the simpler ways I hear in my head a german voice shouting these words as I type the flags.

[โ€“] original_reader@lemm.ee 6 points 1 month ago* (last edited 1 month ago)

Awesome. Now I have the shouting German in my head too.

Zank you!

[โ€“] svcg@lemmy.blahaj.zone 2 points 1 month ago (1 children)
[โ€“] rain_worl@lemmy.world 0 points 1 month ago
[โ€“] catharso@discuss.tchncs.de 11 points 1 month ago* (last edited 1 month ago) (1 children)

but how would you mv something without moving all it contains?

is there a non -r use case? ๐Ÿค”

[โ€“] pmk@lemmy.sdf.org 4 points 1 month ago

I see it as: mv is just renaming a file, in this case a directory file, with a different full name (path)

[โ€“] rain_worl@lemmy.world 0 points 1 month ago

perhaps file system just requires unlinking and relinking to move? whereas when you make a copy you want to be able to modify it independently