chraebsli to Programmer Humor · 9 months agoTouch a file in Linuximagemessage-square94fedilinkarrow-up11.2Karrow-down131
arrow-up11.17Karrow-down1imageTouch a file in Linuxchraebsli to Programmer Humor · 9 months agomessage-square94fedilink
minus-squaregaterush@lemmy.worldlinkfedilinkarrow-up9·9 months agoThe other command could just be printf '' >> file to not overwrite it. Or even simpler >>file and then interrupt
minus-square4am@lemm.eelinkfedilinkarrow-up6·9 months ago.“:>>” is “append null” right? Do you get a file with a single ASCII NUL or is it truly empty?
minus-squareTrailblazing Braille Taser@lemmy.dbzer0.comlinkfedilinkarrow-up14·9 months agoNot really. I believe : is the “true” builtin. So it’s like running a program that exits with zero and writes nothing to stdout. The >> streams the empty stdout into the named file.
minus-squareal177@lemmy.sdf.orglinkfedilinkarrow-up4·edit-29 months ago$ :|wc -c 0 $ touch /tmp/f; :>>/tmp/f; wc -c /tmp/f 0 /tmp/f
minus-squaregaterush@lemmy.worldlinkfedilinkarrow-up3·9 months agothat’s awesome, did not know about that handy operator!
minus-squareowseilinkfedilinkarrow-up3·9 months agoYeah! it’s basically a noop, I use it as a placeholder when I’m writing a script, since bash doesn’t accept code blocks with no commands
The other command could just be
printf '' >> file
to not overwrite it. Or even simpler>>file
and then interruptor
:>>file
then you don’t need to interrupt.“:>>” is “append null” right? Do you get a file with a single ASCII NUL or is it truly empty?
Not really. I believe : is the “true” builtin. So it’s like running a program that exits with zero and writes nothing to stdout. The >> streams the empty stdout into the named file.
$ :|wc -c 0 $ touch /tmp/f; :>>/tmp/f; wc -c /tmp/f 0 /tmp/f
that’s awesome, did not know about that handy operator!
Yeah!
it’s basically a noop, I use it as a placeholder when I’m writing a script, since bash doesn’t accept code blocks with no commands