Tradional Usage
  tar {A|c|d|r|t|u|x}[GnSkUWOmpsMBiajJzZhPlRvwo] [ARG...]

It is invigorating.

      • TheSyndZ@lemmy.dbzer0.com
        link
        fedilink
        English
        arrow-up
        1
        ·
        39 minutes ago

        Well i’ll be damned learning just now thanks to you that it equals -rlptgoD (recursive, links, perms, times, group, owner, devices)

        I’m one of the lucky 10000…

  • Imhotep@lemmy.world
    link
    fedilink
    arrow-up
    2
    ·
    1 hour ago

    If like me you have no memory, use aliases often.

    Put them in a dedicated file, I find it easier to manage. You’ll need to modify bashrc or zshrc to link to the new file. Big plus, they now work with both. I don’t know if it can be done with fish.

    Now my favorite tip for us brainless: start aliases with an easy to reach character you most likely wouldn’t use in a terminal. I use “é”, on a french keyboard.

    é+tab: all my aliases é+t+tab: I see “étarextract” (there it is), “étext-edit”, “étodo”

    I don’t even need to remember aliases. I don’t need to remember anything!
    Imathop out.

  • groucho@retrolemmy.com
    link
    fedilink
    English
    arrow-up
    8
    ·
    8 hours ago

    Honestly I just create and extract. I don’t use most of the options. But, I had a lead about ten years ago dare me to create and compress a .tar.gz directly without looking it up and I was most of the way through typing it by the time he finished talking. He looked at me like I was doing black magic.

    • zackhow@programming.dev
      link
      fedilink
      arrow-up
      2
      ·
      8 hours ago

      I’m just glad that ffmpeg is smart enough when converting audio that all you need to do is pass the input and output.

    • Ephera@lemmy.ml
      link
      fedilink
      arrow-up
      15
      ·
      edit-2
      15 hours ago

      ffmpeg is always funny to me, because it feels like you could convert anything into anything, if you just knew the right flags, but 99% of my use is extracting a clip out of a video file.

      And the command for that is in my shell history, so I wouldn’t know the flags either. ¯\_(⊙ʖ⊙)/¯

      • printf("%s", name);@piefed.blahaj.zone
        link
        fedilink
        English
        arrow-up
        6
        ·
        15 hours ago

        This comment got my brain stuck in an infinite loop: there’s a rabbit on the Japanese moon, there are tons of moon themed jazz songs, the moon is cheeze, moonshine, moon rhymes with boon, Moon River is a beautiful song, Kame-sennin blew up the moon to make Son Goku revert to his human form, Moonraker was only “meh…”…

        I still don’t get it. WHAT does this expression mean 😭

    • ImgurRefugee114@reddthat.com
      link
      fedilink
      arrow-up
      5
      ·
      13 hours ago

      I got it, mostly… The various filter chains, not so much. But I can map input streams and set dispositions and metadata, and know a bunch of svtav1 passthru params by heart; with enough experience to set pretty decent crf/preset/filmgrain-synth settings by eyeballing the input (ofc specifics depends on the video encoder and whether or not I’m using something like the psyex/hdr fork…)

      Some people look at this as wizardry, but it’s really not too hard once to get the hang of ordered arguments… Like whether or not you put -ss before or after -i changes the seeking behavior… Okay, it’s a little wizardry.

    • dual_sport_dork 🐧🗡️@lemmy.world
      link
      fedilink
      arrow-up
      19
      ·
      18 hours ago

      Not to mention imagemagick. I can often get ffmpeg to more or less do what I want on the first try, but imagemagick always results in a second try after reading the documentation for the 938th time.

      For the magick stuff I do all the time (you all know what it is) I prepared a script. I wrote it probably a couple of years ago by this point and even if you held a gun to my head and I had it open in the text editor in front of me I couldn’t explain to you what all the flags and arguments actually do.

    • stoy@lemmy.zip
      link
      fedilink
      English
      arrow-up
      9
      ·
      18 hours ago

      I just remember running the coolest ffmpeg command many years ago, I don’t remember the actual command, but it rendered th video as ascii art

    • dil@piefed.zip
      link
      fedilink
      English
      arrow-up
      3
      ·
      14 hours ago

      Lemmy got an Ai hate boner but this is the first thing zi ever really used it for that wasn’t research. “Give me the corrct ffmpeg command for _ and explain every flag concisely.”

      • printf("%s", name);@piefed.blahaj.zone
        link
        fedilink
        English
        arrow-up
        1
        ·
        12 hours ago

        While I wouldn’t use AI myself for ehtical, environmental and detrimental reasons, I also don’t judge anybody that does. Just make sure to vet the information on your own too! 😊 What did you use ffmpeg for BTW?

        • dil@piefed.zip
          link
          fedilink
          English
          arrow-up
          2
          ·
          12 hours ago

          It’s very clutch in general when you need a smaller file size or different format.

        • dil@piefed.zip
          link
          fedilink
          English
          arrow-up
          2
          ·
          12 hours ago

          Converting my blender videos to smaller sizes for tiktok/ig to avoid their compression. I eventually just started going for smaller 15second vids, don’t usually have to compress and I’m not making money either way. Was pretty useful tho, I saved one command and would just swap the names of the files, used it on my iphone through A-shell quite a bit.

    • silenium_dev@feddit.org
      link
      fedilink
      arrow-up
      2
      ·
      13 hours ago

      I mean, I at least know the simple stuff like transcode (with hw accel), scaling and trimming by heart, but filters? Hell no

      • printf("%s", name);@piefed.blahaj.zone
        link
        fedilink
        English
        arrow-up
        2
        ·
        13 hours ago

        Same here. Except I have only learned how to encode with x264 for now, without hw accel because learning the (in my case) nvenc switches and options is a whole other chapter…

  • esc@piefed.social
    link
    fedilink
    English
    arrow-up
    17
    ·
    14 hours ago

    It’s pretty simple

    tar
     e[x]tract
     [z]is
     [f]ile
     [v]erbosely
    archive.tar.gz
    --directory=archivedir
    

    For creation it’s pretty much the same but you need to specify [c]reate, e.g. tar czvf archive.tar.gz filestoarchive/ and for lis[t]ing it’s - tar tf archive.tar.gz

    • pelya@lemmy.world
      link
      fedilink
      arrow-up
      31
      ·
      15 hours ago

      tar is usually smart enough to figure that .tar.gz is a compressed archive, so tar xvf suffices.

      Moreover, .tar.xz archives are much more common nowadays, and the flag to tell tar to use xz decompression is J. Yes, uppercase J I shit you not, because all other letters of alphabet were already taken. The next commandline option added to tar is going to be a Unicode emoji symbol.

      • ruby@lemmy.dbzer0.com
        link
        fedilink
        arrow-up
        4
        ·
        11 hours ago

        i always forgot about -J so i got used to writing tar --xz -cvf archive.tar.xz file1 file2… instead. it’s a bit more explicit and i’ll never have to hunt for the same flag in the man page again.

        • pelya@lemmy.world
          link
          fedilink
          arrow-up
          2
          ·
          edit-2
          10 hours ago

          Burrows–Wheeler algorithm or block-compression algorithm, the bzip2 file compression program was developed by Julian Seward.

          Ah yes, totally makes sense.

          XZ Utils started as a Unix port of Igor Pavlov’s LZMA (Lempel–Ziv–Markov) algorithm, by Lasse Collin, and then by the Tukaani Project.

          So apparently the uppercase J stands for “that guy who made a better compression algorithm than Julian”.

  • entwine@programming.dev
    link
    fedilink
    arrow-up
    15
    ·
    15 hours ago

    Tar (some versions at least?) is actually smart enough to detect which format to use based on file extension of the output, so you don’t need to remember which flag corresponds to which compressor. Examples:

    tar -caf archive.tar.xz [files]
    tar -caf archive.tar.bz2 [files]
    
    # extract
    tar -xf archive.tar.xz
    tar -xf archive.tar.bz2
    

    So you really only need to remember that c means create, x means extract

  • shrek_is_love@lemmy.ml
    link
    fedilink
    arrow-up
    33
    ·
    18 hours ago

    I was going to use this opportunity to shill for tldr by linking directly to their page on tar.

    But I just realized tar’s reputation is so bad, they use it as the example on tldr’s homepage. 😂

    • Ephera@lemmy.ml
      link
      fedilink
      arrow-up
      6
      ·
      17 hours ago

      I just use tar xf (extract file). Not sure, if that would’ve already worked 13 years ago…

    • HakFoo@lemmy.sdf.org
      link
      fedilink
      arrow-up
      5
      ·
      17 hours ago

      Use “tvf” (or tvzf or tvJf) first to make sure the files are nested nicely and not about to splooge all over your home directory.

    • neidu4@piefed.social
      link
      fedilink
      English
      arrow-up
      2
      ·
      14 hours ago

      Same. And if it’s compressed you just add the appropriate shorthand in the letter soup somewhere in the middle:
      z for gzip j for bzip (for some reason)
      …and I’m sure the other common algorithms have associated letters in tar. If not, pipe it

    • ジン@quokk.au
      link
      fedilink
      English
      arrow-up
      3
      ·
      17 hours ago

      same. One of those commands I only ever see with a specific set of flags that makes me wonder why or how flags are even useful for most users