1166
Touch a file in Linux (programming.dev)
you are viewing a single comment's thread
view the rest of the comments
[-] 4am@lemm.ee 18 points 3 months ago

“Do one thing and do it very well” is the UNIX philosophy after all; if you’re 99% likely to just create that missing file after you get a file not found error, why should touch waste your time?

[-] 0x0@lemmy.dbzer0.com 35 points 3 months ago

Because now touch does two things.

Without touch, we could "just" use the shell to create files.

: > foo.txt
[-] deegeese@sopuli.xyz 20 points 3 months ago

Touch does one thing from a “contract” perspective:

Ensure the timestamp of is

[-] dan@upvote.au 15 points 3 months ago

Systemd also does one thing from a contract perspective: run your system

[-] emptiestplace@lemmy.ml 4 points 3 months ago
[-] dukk@programming.dev 1 points 3 months ago

Does it do it well, though?

[-] stebo02@lemmy.dbzer0.com 20 points 3 months ago

with this logic, any command that moves, copies or opens a file should just create a new file if it doesn't exist

and now you're just creating new files without realising just because of a typo

[-] Kusimulkku@lemm.ee 9 points 3 months ago

But this directly goes against that philosophy, since now instead of changing timestamps it's also creating files

[-] kautau@lemmy.world 10 points 3 months ago* (last edited 3 months ago)

You can pass -c to not create a file, but it does go against the philosophy that it creates them by default instead of that being an option

EDIT: Looking closer into the code, it would appear to maybe be an efficiency thing based on underlying system calls

Without that check, touch just opens a file for writing, with no other filesystem check, and closes it

With that check, touch first checks if the file exists, and then if so opens the file for writing

this post was submitted on 17 Mar 2024
1166 points (97.5% liked)

Programmer Humor

18244 readers
1 users here now

Welcome to Programmer Humor!

This is a place where you can post jokes, memes, humor, etc. related to programming!

For sharing awful code theres also Programming Horror.

Rules

founded 1 year ago
MODERATORS