Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (Cyborg)
  • No Skin
Collapse
Brand Logo

CIRCLE WITH A DOT

  1. Home
  2. Uncategorized
  3. when do you usually use the man page for a complex command line tool to answer a question you have?

when do you usually use the man page for a complex command line tool to answer a question you have?

Scheduled Pinned Locked Moved Uncategorized
200 Posts 155 Posters 242 Views
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • b0rk@social.jvns.caB b0rk@social.jvns.ca

    i'm very curious about everyone who says "I'd look there first", if I want to figure out how to do something new I think I'll usually google how to do it rather than look at the man page, and then maybe later look at the man page to look up the details

    (I've gotten enough of these answers:
    - "I like that man pages don't require changing context"
    - "with the man page I know I have the right version of the docs")

    wollman@mastodon.socialW This user is from outside of this forum
    wollman@mastodon.socialW This user is from outside of this forum
    wollman@mastodon.social
    wrote last edited by
    #117

    @b0rk The Unix User's/Programmer's Manual is the *reference* documentation, but was never intended to provide introductory guides or conceptual overviews — as originally distributed those were separate documents. The man page should tell you how to do the thing when you already know what you want and that there's a command/function to do it, and you just need the invocation details. Unfortunately the higher level conceptual documentation has fallen by the wayside.

    wollman@mastodon.socialW 1 Reply Last reply
    0
    • gemelen@mammut.moeG gemelen@mammut.moe

      @sgharms @b0rk
      Agree, but there is a significant gap in the quality between BSDs, Illumos/Solaris and likely other Unixen mans versus Linux ones, especially in a way to provide a useful usage examples for common use cases.

      In case of a Limux man I may scroll through pages of options to find nothing on how to combine them correctly, thus I switch to a search engine to get what I need (if I don't have time to experiment).

      That's why to me Illumos mans are gold, that's why the FreeBSD handbook is _the_ handbook, and so on.

      sgharms@techhub.socialS This user is from outside of this forum
      sgharms@techhub.socialS This user is from outside of this forum
      sgharms@techhub.social
      wrote last edited by
      #118

      @gemelen @b0rk no disagreement. man quality in Unix is arguing steakhouses versus a Linux fast food shop: some are surprisingly good and others make me question why I didn’t pay a bit to get a better life experience.

      1 Reply Last reply
      0
      • b0rk@social.jvns.caB b0rk@social.jvns.ca

        i'm very curious about everyone who says "I'd look there first", if I want to figure out how to do something new I think I'll usually google how to do it rather than look at the man page, and then maybe later look at the man page to look up the details

        (I've gotten enough of these answers:
        - "I like that man pages don't require changing context"
        - "with the man page I know I have the right version of the docs")

        rckenned@hachyderm.ioR This user is from outside of this forum
        rckenned@hachyderm.ioR This user is from outside of this forum
        rckenned@hachyderm.io
        wrote last edited by
        #119

        @b0rk for me I think it’s muscle memory from having learned Linux/BSD in the mid 90s. Web search wasn’t nearly as effective then, so there wasn’t much choice.

        That it has worked well enough and doesn’t require context switching to a browser is probably why I still prefer it today.

        1 Reply Last reply
        0
        • b0rk@social.jvns.caB b0rk@social.jvns.ca

          i think part of the reason I'm feeling interested in man pages right now even though I rarely use them is that search has gotten so much worse, it's frustrating, and it makes it feel more appealing to have trustworthy sources with clear explanations

          b0rk@social.jvns.caB This user is from outside of this forum
          b0rk@social.jvns.caB This user is from outside of this forum
          b0rk@social.jvns.ca
          wrote last edited by
          #120

          also it just occurred to me that the one time I wrote a command line tool (https://rbspy.github.io/) I didn't write a man page for it, I made a documentation website instead. I don't remember even considering writing a man page, probably because I rarely use man pages

          (not looking to argue about whether command line tools "should" have man pages or not, just reflecting about how maybe I personally would prefer a good docs website over a man page. Also please no "webpages require internet")

          aburka@hachyderm.ioA tartley@fosstodon.orgT emily_s@mastodon.me.ukE gibwar@infosec.exchangeG ednl@mastodon.socialE 11 Replies Last reply
          0
          • b0rk@social.jvns.caB b0rk@social.jvns.ca

            i'm very curious about everyone who says "I'd look there first", if I want to figure out how to do something new I think I'll usually google how to do it rather than look at the man page, and then maybe later look at the man page to look up the details

            (I've gotten enough of these answers:
            - "I like that man pages don't require changing context"
            - "with the man page I know I have the right version of the docs")

            R This user is from outside of this forum
            R This user is from outside of this forum
            rpetre@hachyderm.io
            wrote last edited by
            #121

            @b0rk I personally found that doing a complete read of the manpage of a new tool gives me a fairly good idea of what sort of problem the authors wanted to solve, even if I don't recall specific parameters later. Also whenever i run into a weird command somewhere, I look up what all the flags do, both to understand the subtleties and to "prime the cache", so to speak.

            Also-also, at least on Debian, a _lot_ of things have manpages, like file formats or some helper scripts. And they have neat references to one another at the end. It's basically a proto-web.

            1 Reply Last reply
            0
            • wollman@mastodon.socialW wollman@mastodon.social

              @b0rk The Unix User's/Programmer's Manual is the *reference* documentation, but was never intended to provide introductory guides or conceptual overviews — as originally distributed those were separate documents. The man page should tell you how to do the thing when you already know what you want and that there's a command/function to do it, and you just need the invocation details. Unfortunately the higher level conceptual documentation has fallen by the wayside.

              wollman@mastodon.socialW This user is from outside of this forum
              wollman@mastodon.socialW This user is from outside of this forum
              wollman@mastodon.social
              wrote last edited by
              #122

              @b0rk The broadening of the programming environment has also taken its toll. The manual covers C and shell programming, but a lot of work today is in different language environments that have their own documentation, some good and some bad. Even in the standard utilities, something like awk or sed is very difficult to learn from the reference manual. Perl at least was always good at making manual pages for every installed package, but they depend on authors to get the information structure down.

              b0rk@social.jvns.caB wollman@mastodon.socialW 2 Replies Last reply
              0
              • b0rk@social.jvns.caB b0rk@social.jvns.ca

                also it just occurred to me that the one time I wrote a command line tool (https://rbspy.github.io/) I didn't write a man page for it, I made a documentation website instead. I don't remember even considering writing a man page, probably because I rarely use man pages

                (not looking to argue about whether command line tools "should" have man pages or not, just reflecting about how maybe I personally would prefer a good docs website over a man page. Also please no "webpages require internet")

                aburka@hachyderm.ioA This user is from outside of this forum
                aburka@hachyderm.ioA This user is from outside of this forum
                aburka@hachyderm.io
                wrote last edited by
                #123

                @b0rk there's also the aspect that man pages are stored on my system when the tool is installed, whereas websites inevitably disappear over time and can be temporarily inaccessible for any number of reasons

                aburka@hachyderm.ioA 1 Reply Last reply
                0
                • wollman@mastodon.socialW wollman@mastodon.social

                  @b0rk The broadening of the programming environment has also taken its toll. The manual covers C and shell programming, but a lot of work today is in different language environments that have their own documentation, some good and some bad. Even in the standard utilities, something like awk or sed is very difficult to learn from the reference manual. Perl at least was always good at making manual pages for every installed package, but they depend on authors to get the information structure down.

                  b0rk@social.jvns.caB This user is from outside of this forum
                  b0rk@social.jvns.caB This user is from outside of this forum
                  b0rk@social.jvns.ca
                  wrote last edited by
                  #124

                  @wollman this all makes a lot of sense to me, personally I've never been a C programmer and so the classic "unix reference manual" style always feels like a bit of an alien life form and like it came from a different time.

                  1 Reply Last reply
                  0
                  • b0rk@social.jvns.caB b0rk@social.jvns.ca

                    also it just occurred to me that the one time I wrote a command line tool (https://rbspy.github.io/) I didn't write a man page for it, I made a documentation website instead. I don't remember even considering writing a man page, probably because I rarely use man pages

                    (not looking to argue about whether command line tools "should" have man pages or not, just reflecting about how maybe I personally would prefer a good docs website over a man page. Also please no "webpages require internet")

                    tartley@fosstodon.orgT This user is from outside of this forum
                    tartley@fosstodon.orgT This user is from outside of this forum
                    tartley@fosstodon.org
                    wrote last edited by
                    #125

                    @b0rk I suppose that adding a man page requires extra hurdles of not just creating the man page itself, but packaging your tool such that the man page gets installed along with it. Now you have to make a .deb and and .apt and whatever else, instead of just saying "download this script or executable and run it."

                    b0rk@social.jvns.caB fanf@mendeddrum.orgF 2 Replies Last reply
                    0
                    • b0rk@social.jvns.caB b0rk@social.jvns.ca

                      @karabaic I've never used openbsd but I'm so curious about the openbsd man page culture because of how people talk about it

                      do you know if there's anywhere that I can read about the documentation philosophy or about how people relate to it?

                      karabaic@mastodon.socialK This user is from outside of this forum
                      karabaic@mastodon.socialK This user is from outside of this forum
                      karabaic@mastodon.social
                      wrote last edited by
                      #126

                      @b0rk The FAQ on posting to the openbsd.misc group is a good place to start. after reading man intro. I'd then check the contribution standards on the project.

                      It's considered incomplete to try to check in code with user-visible functionality that's not explained in the accompanying man page so it can be tested with by reading that page.

                      1 Reply Last reply
                      0
                      • b0rk@social.jvns.caB b0rk@social.jvns.ca

                        also it just occurred to me that the one time I wrote a command line tool (https://rbspy.github.io/) I didn't write a man page for it, I made a documentation website instead. I don't remember even considering writing a man page, probably because I rarely use man pages

                        (not looking to argue about whether command line tools "should" have man pages or not, just reflecting about how maybe I personally would prefer a good docs website over a man page. Also please no "webpages require internet")

                        emily_s@mastodon.me.ukE This user is from outside of this forum
                        emily_s@mastodon.me.ukE This user is from outside of this forum
                        emily_s@mastodon.me.uk
                        wrote last edited by
                        #127

                        @b0rk I've written a few command line tools over the years that launch a web broswer to display stuff.

                        I'll keep the idea of having a docs subcommand spawn a local web server and broswer to view guides, could be useful.

                        1 Reply Last reply
                        0
                        • b0rk@social.jvns.caB b0rk@social.jvns.ca

                          i'm very curious about everyone who says "I'd look there first", if I want to figure out how to do something new I think I'll usually google how to do it rather than look at the man page, and then maybe later look at the man page to look up the details

                          (I've gotten enough of these answers:
                          - "I like that man pages don't require changing context"
                          - "with the man page I know I have the right version of the docs")

                          clonezone@mastodon.socialC This user is from outside of this forum
                          clonezone@mastodon.socialC This user is from outside of this forum
                          clonezone@mastodon.social
                          wrote last edited by
                          #128

                          @b0rk The man page is closer to the source of information, rather than some random website one found via web search. Plus, given differences between OSs/distro releases, how do you know what you get from a web search matches up with what you have actually installed?

                          1 Reply Last reply
                          0
                          • b0rk@social.jvns.caB b0rk@social.jvns.ca

                            i'm very curious about everyone who says "I'd look there first", if I want to figure out how to do something new I think I'll usually google how to do it rather than look at the man page, and then maybe later look at the man page to look up the details

                            (I've gotten enough of these answers:
                            - "I like that man pages don't require changing context"
                            - "with the man page I know I have the right version of the docs")

                            spills@hachyderm.ioS This user is from outside of this forum
                            spills@hachyderm.ioS This user is from outside of this forum
                            spills@hachyderm.io
                            wrote last edited by
                            #129

                            I always go to --help first to get an idea of what my options are or to scope my question better, then I can search for examples using whatever option vs searching "how to X" if that makes sense

                            1 Reply Last reply
                            0
                            • aburka@hachyderm.ioA aburka@hachyderm.io

                              @b0rk there's also the aspect that man pages are stored on my system when the tool is installed, whereas websites inevitably disappear over time and can be temporarily inaccessible for any number of reasons

                              aburka@hachyderm.ioA This user is from outside of this forum
                              aburka@hachyderm.ioA This user is from outside of this forum
                              aburka@hachyderm.io
                              wrote last edited by
                              #130

                              @b0rk do we need a --help that starts a local web server hosting a doc page which is way easier to read and navigate than a man page? 🤔

                              b0rk@social.jvns.caB 1 Reply Last reply
                              0
                              • tartley@fosstodon.orgT tartley@fosstodon.org

                                @b0rk I suppose that adding a man page requires extra hurdles of not just creating the man page itself, but packaging your tool such that the man page gets installed along with it. Now you have to make a .deb and and .apt and whatever else, instead of just saying "download this script or executable and run it."

                                b0rk@social.jvns.caB This user is from outside of this forum
                                b0rk@social.jvns.caB This user is from outside of this forum
                                b0rk@social.jvns.ca
                                wrote last edited by
                                #131

                                @tartley yea I'm not sure if anyone's ever packaged rbspy for Debian because (at least at the time) packaging Rust projects for Debian was hard or maybe impossible

                                1 Reply Last reply
                                0
                                • aburka@hachyderm.ioA aburka@hachyderm.io

                                  @b0rk do we need a --help that starts a local web server hosting a doc page which is way easier to read and navigate than a man page? 🤔

                                  b0rk@social.jvns.caB This user is from outside of this forum
                                  b0rk@social.jvns.caB This user is from outside of this forum
                                  b0rk@social.jvns.ca
                                  wrote last edited by
                                  #132

                                  @aburka that's what fish does! Well it just opens the HTML file in the browser, no need to start a local web server for those docs

                                  1 Reply Last reply
                                  0
                                  • wollman@mastodon.socialW wollman@mastodon.social

                                    @b0rk The broadening of the programming environment has also taken its toll. The manual covers C and shell programming, but a lot of work today is in different language environments that have their own documentation, some good and some bad. Even in the standard utilities, something like awk or sed is very difficult to learn from the reference manual. Perl at least was always good at making manual pages for every installed package, but they depend on authors to get the information structure down.

                                    wollman@mastodon.socialW This user is from outside of this forum
                                    wollman@mastodon.socialW This user is from outside of this forum
                                    wollman@mastodon.social
                                    wrote last edited by
                                    #133

                                    @b0rk tcl, as I recall, shipped with a whole new "section" of manual pages for its intrinsics that you could opt to install, but I don't know anyone who actually wanted that. That was in the days when any system worth its salt shipped with at least nroff and -man macros — some systems made that a separately licensed add-on, forcing third-party software distributors to ship preformatted documentation. That was probably the start of the downfall, because it opened up the options for doc authoring.

                                    1 Reply Last reply
                                    0
                                    • b0rk@social.jvns.caB b0rk@social.jvns.ca

                                      when do you usually use the man page for a complex command line tool to answer a question you have? (like git, openssl, rsync, curl, etc)

                                      (edit: no need to say "i use --help then man")

                                      C This user is from outside of this forum
                                      C This user is from outside of this forum
                                      culper@infosec.exchange
                                      wrote last edited by
                                      #134

                                      @b0rk I think most man pages have a lot of detail and are great resources. But.....While they go into great detail they lack the concept of basic use. Take the tar command. Great compression utility with lots of options. Most people just want to decompress files. How do you do that? I had to search on google for the answer. Yes the proper syntax was buried in the man page in different parts. I think a basic command example at the begining of the man page about what most will be using the utility for would help.

                                      1 Reply Last reply
                                      0
                                      • b0rk@social.jvns.caB b0rk@social.jvns.ca

                                        when do you usually use the man page for a complex command line tool to answer a question you have? (like git, openssl, rsync, curl, etc)

                                        (edit: no need to say "i use --help then man")

                                        mutecipher@mastodon.socialM This user is from outside of this forum
                                        mutecipher@mastodon.socialM This user is from outside of this forum
                                        mutecipher@mastodon.social
                                        wrote last edited by
                                        #135

                                        @b0rk I typically start with `-h/--help` flags to see any obvious answer. Then move to man pages after the fact. If I can't find the answer there then move up to a web search.

                                        1 Reply Last reply
                                        0
                                        • b0rk@social.jvns.caB b0rk@social.jvns.ca

                                          also it just occurred to me that the one time I wrote a command line tool (https://rbspy.github.io/) I didn't write a man page for it, I made a documentation website instead. I don't remember even considering writing a man page, probably because I rarely use man pages

                                          (not looking to argue about whether command line tools "should" have man pages or not, just reflecting about how maybe I personally would prefer a good docs website over a man page. Also please no "webpages require internet")

                                          gibwar@infosec.exchangeG This user is from outside of this forum
                                          gibwar@infosec.exchangeG This user is from outside of this forum
                                          gibwar@infosec.exchange
                                          wrote last edited by
                                          #136

                                          @b0rk I've written man pages before when building internal tools. It was fun learning the ROFF language or whatever. Part of my reluctance to do it with general tools is the requirement to install them as satellite files which is a bit of a pain when it comes to single binary downloads.

                                          I know there's alternate locations you can put them, like /usr/local/man and even $HOME/.local/share/man the directory structure after that is also a bit of a pain. 😅 And then there's the need to remember to clean them up after the fact if you no longer use the tool.

                                          It'd be neat if some of these apps had the ability to drop the files and a cleanup step to remove them so they could still be single binary. Another thought would be extending man to see if the the requested page is available normally, and if not, see if there's a binary in the path that matches that name? Maybe the man page could be embedded in another section so it didn't have to be executed to generate help? 🤔

                                          1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          • Login

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular
                                          • World
                                          • Users
                                          • Groups