• silasmariner@programming.dev
    link
    fedilink
    arrow-up
    33
    ·
    2 months ago

    Why is fzf, the best utility, relegated to the end? And why is ripgrep - a huge improvement over grep, especially if you want to search only on committed files in a git directory - not even mentioned? This list is outrageous. Even more so because I can’t pretend to have known about all of these before, and annoyingly now have to face the fact that some of these actually look pretty handy.

    • vvv@programming.dev
      link
      fedilink
      arrow-up
      15
      ·
      2 months ago

      most shells have a CDPATH which works just like PATH but for directories. set it to $HOME/projects/:$HOME/porn/ or whatever, and you’ll get the subdirectories in your cd tab completion, without installing extra stuff

    • fxomt@lemmy.dbzer0.com
      link
      fedilink
      arrow-up
      5
      ·
      2 months ago

      I’ve just replaced cd with it. It’s so fucking convenient writing cd n and immediately entering my config, then writing cd f and entering some other project of mine.

    • Albbi@lemmy.ca
      link
      fedilink
      arrow-up
      3
      arrow-down
      1
      ·
      2 months ago

      Me too! Only learned about it a while ago too. I hate logging into machines that don’t have it.

    • andioop@programming.dev
      link
      fedilink
      English
      arrow-up
      18
      ·
      2 months ago

      Am local village idiot curious as to why this would be controversial.

      First guess: advising change from familiar workflow

      Second guess: gotta download a lot of these

      • MadhuGururajan@programming.dev
        link
        fedilink
        English
        arrow-up
        3
        ·
        1 month ago

        3rd thing: these tools may not be available on the remote server at your company. so you don’t want to stumble on the commands (aliases exist but the outputs are wildly different)

    • Overspark@feddit.nl
      link
      fedilink
      arrow-up
      3
      ·
      edit-2
      2 months ago

      You can also let bat render your man pages, with some nicer coloration (and theming) than man does by default.

    • Jakeroxs@sh.itjust.works
      link
      fedilink
      arrow-up
      6
      arrow-down
      2
      ·
      2 months ago

      Can you explain why a little shorter? Ain’t trying to read that whole thing rn, though the snippets I read were interesting

      • Gamma@programming.dev
        link
        fedilink
        English
        arrow-up
        2
        ·
        2 months ago

        Relevant except below, bolded is the key point.

        -v prints non-printing characters in a visible representation. Making strange characters visible is a genuinely new function, for which no existing program is suitable. (sed -n l, the closest standard possibility, aborts when given very long input lines, which are more likely to occur in files containing non-printing characters.) So isn’t it appropriate to add the -v option to cat to make strange characters visible when a file is printed?

        The answer is “No.” Such a modification confuses what cat’s job is  concatenating files  with what it happens to do in a common special case  showing a file on the terminal. A UNIX program should do one thing well, and leave unrelated tasks to other programs. cat’s job is to collect the data in files. Programs that collect data shouldn’t change the data; cat therefore shouldn’t transform its input.

    • emzili@programming.dev
      link
      fedilink
      English
      arrow-up
      14
      arrow-down
      1
      ·
      2 months ago

      The default output of ls is uncolored, but some distros include an alias in your .bashrc for ‘ls’ to ‘ls --color=auto’, so you definitely don’t need a whole other utility just for colored output

        • massive_bereavement@fedia.io
          link
          fedilink
          arrow-up
          4
          ·
          2 months ago

          Wow, pretty cool the tree and total size options, kind of substitutes other commands I commonly use.

          Only thing is though I find it slower than du and tree.

          • Overspark@feddit.nl
            link
            fedilink
            arrow-up
            2
            ·
            2 months ago

            You can also try something like broot. Lovely TUI file manager that shows how big folders are when you start it with the -w option, faster than either du or tree in my experience.

        • emzili@programming.dev
          link
          fedilink
          English
          arrow-up
          3
          ·
          2 months ago

          That’s true, I was mostly speaking to that specific use-case. It certainly sounds like it has generally superior functionality to ls, but for me personally it doesn’t beat out the utility of already being present on every linux system I’ll touch.

          That’s unlike something like rsync which is genuinely more useful than scp for anything other than simple file transfers.

          • Overspark@feddit.nl
            link
            fedilink
            arrow-up
            3
            ·
            2 months ago

            Yeah that’s fair, I only use it on systems where I’m in full control and use enough to get all my toys set up properly, which goes for all the commands in the article. I’ve just aliased ls to eza though, so it’ll mostly (options are a bit different) keep working on any system I’m on.

  • jnerk@lemm.ee
    link
    fedilink
    arrow-up
    3
    ·
    2 months ago

    Can someone give me a summary? That website keeps crashing my browser…

  • zr0@lemmy.dbzer0.com
    link
    fedilink
    English
    arrow-up
    2
    ·
    2 months ago

    Yeah, all good and nice, but as long as they are not part of all linux distributions, I will not use them. I need a ls because I know it is working on all machines that I use. Additionally, don’t forget that introducing new tools also introduces new attack surfaces, something you want to avoid on very important servers.

  • Lovable Sidekick@lemmy.world
    link
    fedilink
    English
    arrow-up
    1
    arrow-down
    1
    ·
    2 months ago
    Reading package lists... Done
    Building dependency tree... Done
    Reading state information... Done
    Unable to locate package batcat