    # File lib/chef/knife/help.rb, line 25
          def run
            if name_args.empty?
              ui.info "Usage: knife SUBCOMMAND (options)"
              ui.msg ""
              # This command is atypical, the user is likely not interested in usage of
              # this command, but knife in general. So hack the banner.
              opt_parser.banner = "General Knife Options:"
              ui.msg opt_parser.to_s
              ui.msg ""
              ui.info "For further help:"
              ui.info("knife help list             list help topics\nknife help knife            show general knife help\nknife help TOPIC            display the manual for TOPIC\nknife SUBCOMMAND --help     show the options for a command\n")
              exit 1
            else
              @query = name_args.join('-')
            end

            case @query
            when 'topics', 'list'
              print_help_topics
              exit 1
            when 'intro', 'knife'
              @topic = 'knife'
            else
              @topic = find_manpages_for_query(@query)
            end

            manpage_path = available_manpages_by_basename[@topic]
            exec "man #{manpage_path}"
          end