• @48954246@lemmy.world
      link
      fedilink
      English
      21
      edit-2
      9 months ago

      Feels dangerous to run. What happens if the file already exists and has something important in it?

      touch -a is probably better

      • @gaterush@lemmy.world
        link
        fedilink
        99 months ago

        The other command could just be printf '' >> file to not overwrite it. Or even simpler >>file and then interrupt

          • @4am@lemm.ee
            link
            fedilink
            69 months ago

            .“:>>” is “append null” right? Do you get a file with a single ASCII NUL or is it truly empty?

            • Trailblazing Braille Taser
              link
              fedilink
              149 months ago

              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.

            • @al177
              link
              4
              edit-2
              9 months ago

              $ :|wc -c 0 $ touch /tmp/f; :>>/tmp/f; wc -c /tmp/f 0 /tmp/f

            • @owsei@programming.dev
              link
              fedilink
              39 months ago

              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