Go语言程序的命令行参数

获取命令行参数是程序功能多样化的必要前提。

这个例子展示Go语言如何获得程序的命令行参数。

Go语言程序:

// echoarg project main.go
package main

import (
    "fmt"
    "os"
)

func main() {
    var s, sep string
    for i := 0; i < len(os.Args); i++ {
        s += sep + os.Args[i]
        sep = " "
    }
    fmt.Println(s)
}

在操作系统下运行命令”./echoarg -a -b -c -d”,例如:

~/go/src/echoarg$ ./echoarg -a -b -c -d

则会输出以下结果:

./echoarg -a -b -c -d

程序说明:

1.获得命令行参数需要使用包”os”

2.命令行参数通过包”os”传递,参数存放在切片(slice)中,其名字为os.Args[],os.Args[0]是命令本身,其他的os.Args[i]则是命令的各个选项

3.包”os”中,还有os.Stdin等,其含义一目了然

Original: https://www.cnblogs.com/tigerisland/p/7563553.html
Author: 海岛Blog
Title: Go语言程序的命令行参数

原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/535746/

转载文章受原作者版权保护。转载请注明原作者出处!

(0)

大家都在看

  • 一次Kafka内存泄露排查经过

    一、现象 服务部署后内存总体呈上升趋势 二、排查过程 通过go tool pprof收集了三天内存数据 2月11号数据: 2月14号数据: 2月15号数据: 我们使用sarama客…

    Go语言 2023年5月25日
    049
  • 写了一年golang,来聊聊进程、线程与协程

    本文已收录 https://github.com/lkxiaolou/lkxiaolou 欢迎star。 进程 在早期的单任务计算机中,用户一次只能提交一个作业,独享系统的全部资源…

    Go语言 2023年5月25日
    074
  • Operator 示例:使用 Redis 部署 PHP 留言板应用程序

    安装 Docker Desktop,并启动内置的 Kubernetes 集群 注册一个hub.docker.com 账户,需要将本地构建好的镜像推送至公开仓库中 安装 operat…

    Go语言 2023年5月25日
    063
  • Go Micro Dashboard – 实现细节(一)

    前言 Go Micro Dashboard是基于go-micro和ng-alain开发的, 它既是go-micro开发过程中的工具,也可以作为学习go-micro的实际案例。接下来…

    Go语言 2023年5月25日
    069
  • B树-查找

    B树系列文章 1. B树-介绍 2. B树-查找 3. B树-插入 4. B树-删除 查找 假设有一棵3阶B树,如下图所示。 下面说明在该B树中查找 52的过程 首先,从根结点出发…

    Go语言 2023年5月25日
    058
  • golang 中 sync.Mutex 的实现

    mutex 主要有两个 method: Lock() 和 Unlock() Lock() 可以通过一个 CAS 操作来实现 func (m *Mutex) Lock() { for…

    Go语言 2023年5月25日
    053
  • 基于Go语言实现好用的HTTP接口请求requests

    使用Go自带的net/http库可以发送各种HTTP请求。然而各种类型请求发送方式有点不太一致,这里参考Python requests库的使用方式,简单封装了一下。代码如下: 文件…

    Go语言 2023年5月29日
    057
  • Go代码规范梳理

    注释语句 // Request 表示运行命令的请求。 type Request struct { … // Encode 将 req 的 JSON 编码写入 w 。 func …

    Go语言 2023年5月25日
    060
  • 如何在 Go 中将 []byte 转换为 io.Reader?

    原文链接: 如何在 Go 中将 []byte 转换为 io.Reader? 在 stackoverflow 上看到一个问题,题主进行了一个网络请求,接口返回的是 []byte。如果…

    Go语言 2023年5月25日
    065
  • 【Go实战基础】数组实战,程序员的基本功

    数组实战,程序员的基本功。 实战需求: 输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有奇数位于数组的前半部分,所有偶数位于数组的后半部分。 实战思路: 1、先声明…

    Go语言 2023年5月25日
    030
  • go微服务框架Kratos笔记(四)使用nacos作为远端配置中心

    初识nacos nacos是阿里开源的一款用于动态服务发现、配置管理和服务管理的平台。 官方介绍,Nacos 致力于帮助您发现、配置和管理微服务。Nacos 提供了一组简单易用的特…

    Go语言 2023年5月25日
    068
  • 我好像发现了一个Go的Bug?

    从一次重构说起 这事儿还得从一次重构优化说起。 最近在重构一个路由功能,由于路由比较复杂,需求变化也多,于是想通过 &#x8D23;&#x4EFB;&#x9…

    Go语言 2023年5月25日
    044
  • Go – 使用 sync.WaitGroup 来实现并发操作

    如果你有一个任务可以分解成多个子任务进行处理,同时每个子任务没有先后执行顺序的限制,等到全部子任务执行完毕后,再进行下一步处理。这时每个子任务的执行可以并发处理,这种情景下适合使用…

    Go语言 2023年5月25日
    057
  • Go学习【02】:理解Gin,搭一个web demo

    Go Gin 框架 说Gin是一个框架,不如说Gin是一个类库或者工具库,其包含了可以组成框架的组件。这样会更好理解一点。 举个🌰 端口监听 用于监听请求,也就是服务 请求处理 请…

    Go语言 2023年5月25日
    066
  • 使用Go http重试请求

    原文连接:https://www.zhoubotong.site/post/78.html开发中对于http请求是经常遇到,一般可能网络延迟或接口返回超时,对于发起客户端的请求, …

    Go语言 2023年5月25日
    047
  • Go标准的目录结构(自总结)

    微服务版 &#x251C;&#x2500;&#x2500; LICENSE.md &#x251C;&#x2500;&#x2500; …

    Go语言 2023年5月25日
    044
亲爱的 Coder【最近整理,可免费获取】👉 最新必读书单  | 👏 面试题下载  | 🌎 免费的AI知识星球