{
  "name": "who",
  "description": "Display who is logged in",
  "subcommands": [
    {
      "name": "am",
      "description": "Returns the invoker's real user name"
    }
  ],
  "options": [
    {
      "names": [
        "-a"
      ],
      "description": "Same as -bdlprTtu"
    },
    {
      "names": [
        "-b"
      ],
      "description": "Time of last system boot"
    },
    {
      "names": [
        "-d"
      ],
      "description": "Print dead processes"
    },
    {
      "names": [
        "-H"
      ],
      "description": "Write column headings above the regular output"
    },
    {
      "names": [
        "-l"
      ],
      "description": "Print system login processes (unsupported)"
    },
    {
      "names": [
        "-m"
      ],
      "description": "Only print information about the current terminal"
    },
    {
      "names": [
        "-p"
      ],
      "description": "Print active processes spawned by launchd(8) (unsupported)"
    },
    {
      "names": [
        "-q"
      ],
      "description": "'Quick mode': List only names and number of users currently logged on"
    },
    {
      "names": [
        "-r"
      ],
      "description": "Print the current runlevel"
    },
    {
      "names": [
        "-s"
      ],
      "description": "List only the name, line and time fields (this is the default)"
    },
    {
      "names": [
        "-T"
      ],
      "description": "Print a character after the user name indicating the state of the terminal line: '+' writable, '-' not writable, '?' bad"
    },
    {
      "names": [
        "-t"
      ],
      "description": "Print last system clock change (unsupported)"
    },
    {
      "names": [
        "-u"
      ],
      "description": "Print the idle time for each user and the associated process ID"
    }
  ],
  "args": [
    {
      "name": "file",
      "description": "By default, who gathers information from the file /var/run/utmpx; an alternative file may be specified",
      "template": "filepaths"
    }
  ]
}
