首页 > 其他分享 >kingpin 简单强大命令行

kingpin 简单强大命令行

时间:2023-04-22 09:49:19浏览次数:43  
标签:count 命令行 -- 强大 ping kingpin timeout debug

  • 功能比flag库强大,用法差不多。
  • 相比flag库,最重要的一点就是支持不加"-"的调用。

实例

hello world

package main

import (
  "fmt"

  "gopkg.in/alecthomas/kingpin.v2"
)

var (
  debug   = kingpin.Flag("debug", "Enable debug mode.").Bool()
  timeout = kingpin.Flag("timeout", "Timeout waiting for ping.").Default("5s").OverrideDefaultFromEnvar("PING_TIMEOUT").Short('t').Duration()
  ip      = kingpin.Arg("ip", "IP address to ping.").Required().IP()
  count   = kingpin.Arg("count", "Number of packets to send").Int()
)

func main() {
  kingpin.Version("0.0.1")
  kingpin.Parse()
  fmt.Printf("Would ping: %s with timeout %s and count %d\n", *ip, *timeout, *count)
}

输出

$ ping --help
usage: ping [<flags>] <ip> [<count>]

Flags:
  --debug            Enable debug mode.
  --help             Show help.
  -t, --timeout=5s   Timeout waiting for ping.

Args:
  <ip>        IP address to ping.
  [<count>]   Number of packets to send
$ ping 1.2.3.4 5
Would ping: 1.2.3.4 with timeout 5s and count 5

标签:count,命令行,--,强大,ping,kingpin,timeout,debug
From: https://www.cnblogs.com/cheyunhua/p/17342453.html

相关文章

  • Cobra 快速入门 - 专为命令行程序而生
    最近一直在看 Istio(一个 ServiceMesh 框架)相关的东西,当看到其源码时发现了一个新东西 Cobra,一查却发现这是个好东西,用的地方可不少,比如:Docker、Kubernetes 等都有它的身影存在。为了更好的了解这些开源框架(如,Istio、Kubernetes 等),势必需要对 Cobra 做一个详细的了解,后续可......
  • 快速部署Kubernetes 1.17:使用kubeadm轻松构建强大的容器编排平台
    在上一篇我们已经初步认识了Kubernetes,在本篇我们就开始着手搭建kubernetes,具体操作如下:1.环境准备(1).环境说明节点名称机器IP系统master10.2.3.191CentOS7.7node110.2.3.192CentOS7.7node210.2.3.190CentOS7.7(2).禁止swap(三台机器上都操作)swapoff-a#临时改配置文件/etc/f......
  • gitlab命令行修改登录页
    现象误操作修改了登录页的url,导致无法登录的问题修改进入gitlab容器dockerexec-itgitlab/bin/bash进入postgresql数据库命令行gitlab-psql执行更改语句UPDATEapplication_settingssethome_page_url='';重启gitlabgitlab-ctlrestart执行截图......
  • FlashFXP命令行
    FlashFXP是一个非常好用的FTP工具,同时也是可以使用命令行进行操作。格式:flashfxp.exe-uploadftp://user:pass@ip:port-localpath="本地路径"-remotepath="远程FTP上的路径"上传使用FlashFXP上传文件(夹)的命令行语法:flashfxp.exe-uploadftp://user:pass@ip:port-localpa......
  • jad 命令行批量反编译
    下载地址:http://varaneckas.com/jad/ 解压放到jdkbin目录比如需求是要把org文件夹下及其子文件夹下所有的class文件反编译后放到src目录中,并保持package原始结构命令这样:jad-r-dsrc-sjava"org/**/*.class"-r表示保持原始package结构-dsrc表示output目录为当前的src目录-......
  • memcached命令行参数说明
    评:1、启动Memcache常用参数-p<num>设置TCP端口号(默认不设置为:11211)-U<num>UDP监听端口(默认:11211,0时关闭)[u][b]-l<ip_addr>绑定地址(默认:所有都允许,无论内外网或者本机更换IP,有安全隐患,若设置为127.0.0.1就只能本机访问)[/b][/u]-d以daemon方式运行......
  • CLI命令行应用
    前言针对golang这门高级语言,主要想了解它的语言特性还有服务器建站还有微服务搭建方面的用途,以下都可以算是使用记录。一、命令行应用的标准库实现很多语言都有针对命令行参数的功能包,比如python的argparse和golang的flag两个标准库,对于不少c/cpp程序员来说,最直显的就是main函......
  • 功能强大的JavaScript引擎--SpiderMonkey
    JavaScript在浏览器中的应用几乎是尽人皆知的。实际上,JavaScript技术也可以使用在非浏览器应用程序当中,从而让应用程序具有自动的脚本功能。本文介绍了一种功能非常强大的JavaScript引擎SpiderMonkey。这个引擎是Mozilla浏览器的JavaScript引擎。该引擎接口定......
  • GPU-CPU命令行缓冲区
    目录书上25页命令行缓冲区是一个循环队列,且有大小限制(书上说是几千)CPU调用GPU干活,就会往队列屁股后添加指令GPU看到队列头有指令,就开始干活受CPU限制,受GPU限制受CPU限制:cpu繁忙,向命令行缓冲区写命令很慢,没有命令那gpu就闲下来了受GPU限制:gpu繁忙,命令行缓冲区已经写满......
  • 体验Rabbitmq强大的【优先级队列】之轻松面对现实业务场景
         说到队列的话,大家一定不会陌生,但是扯到优先级队列的话,还是有一部分同学是不清楚的,可能是不知道怎么去实现吧,其实呢,,,这东西已经烂大街了。。。很简单,用“堆”去实现的,在我们系统中有一个订单催付的场景,我们客户的客户在tmall,taobao下的订单,t......