Golang工程自动创建脚本
来源:互联网 发布:洞主手工皂淘宝在哪 编辑:程序博客网 时间:2024/06/02 07:05
1.Windows 版本 gogo.bat
参考Linux版本修改而来
rem 参考程序原文:http://www.cnblogs.com/ficow/p/6553344.htmlrem Alex hurem 2017-07-26rem 建立目录mkdir %1cd %1mkdir pkgmkdir binmkdir srcmkdir src\configmkdir src\%1rem 建立config.go@echo package config>> src\config\config.go@echo func LoadConfig() { >> src\config\config.go@echo } >> src\config\config.gorem 建立main.go@echo package main>> src\%1\main.go@echo import ( >> src\%1\main.go@echo "config" >> src\%1\main.go@echo "fmt" >> src\%1\main.go@echo ) >> src\%1\main.go@echo func main() { >> src\%1\main.go@echo config.LoadConfig() >> src\%1\main.go@echo fmt.Println("Message From %1.exe: Hello World!") >> src\%1\main.go@echo } >> src\%1\main.gorem 建立install.bat@echo set curdir=%%cd%%>>install.bat@echo set oldgopath=%%GOPATH%%>>install.bat@echo set GOPATH=%%curdir%%>>install.bat@echo gofmt -w src>> install.bat@echo go install %1 >> install.bat@echo set GOPATH=%%oldgopath%%>> install.bat@echo echo finished >> install.bat
2.Mac/Linux版 gogo.sh
原文地址:http://www.cnblogs.com/ficow/p/6553344.html
#!/bin/bash#————————————–# Module : mk_go_pro.sh# Author : Blair Zhong# Created : 2013.07.23# Modify :# Version : 1.0# Useage : ./mk_go_pro.sh# ./mk_go_pro.sh porject_name# Description: 创建一个go可编译的工程#————————————–# 根据 Go语言学习园地博客的帖子编写,如有侵权请联系本人# http://blog.studygolang.com/2012/12/go项目的目录结构/# 默认情况下运行本程序,会生成如下目录和文件# test# ├── bin# ├── install.sh# ├── pkg# └── src# ├── config# │ └── config.go# └── test# └── main.go## 5 directories, 3 files## 其中:# 1, install.sh为安装文件,# 2, config.go为test项目的配置文件# 3, main.go这个你懂的# 生成完毕之后运行进入test目录,运行install.sh会生成如下文件和目录# ├── bin# │ └── test# ├── install.sh# ├── pkg# │ └── darwin_amd64# │ └── config.a# └── src# ├── config# │ └── config.go# └── test# └── main.go# 6 directories, 5 files## 多了两个文件# 1, bin目录下的test,这个是可执行稳健# 2, pkg/darwin_amd64下的config.a,这个是config编译后产生的文件## enjoy it!PWD=$(pwd)cd $PWDif [[ "$1" = "" ]]; thenecho "Useage: ./mk_go_pro.sh porject_name"echo -ne "Please input the Porject Name[test]"read Answerif [ "$Answer" = "" ]; thenecho -e "test";PRO_NAME=test;elsePRO_NAME=$Answer;fielsePRO_NAME=$1;fi#创建目录echo "Init Directory …"mkdir -p $PRO_NAME/binmkdir -p $PRO_NAME/pkgmkdir -p $PRO_NAME/src/configmkdir -p $PRO_NAME/src/$PRO_NAME#创建install文件echo "Create install/install.sh …"cd $PRO_NAMEecho '#!/bin/bash' > install.shecho 'if [ ! -f install.sh ]; then' >> install.shecho "echo 'install must be run within its container folder' 1>&2" >> install.shecho "exit 1" >> install.shecho "fi" >> install.shecho >> install.shecho "CURDIR=\`pwd\`" >> install.shecho "OLDGOPATH=\"\$GOPATH\"" >> install.shecho "export GOPATH=\"\$CURDIR\"" >> install.shecho >> install.shecho "gofmt -w src" >> install.shecho "go install $PRO_NAME" >> install.shecho "export GOPATH=\"\$OLDGOPATH\"" >> install.shecho >> install.shecho "echo 'finished'" >>install.shchmod +x install.sh#创建config.go文件echo "Create src/config/config.go …"cd src/configecho package config > config.goecho >> config.goecho func LoadConfig\(\) { >> config.goecho >> config.goecho } >> config.go#创建main.goecho "Create src/$PRO_NAME/main.go …"cd ../$PRO_NAME/echo "package main" > main.goecho >> main.goecho "import (" >> main.goecho " \"config\"" >> main.goecho " \"fmt\"" >> main.goecho ")" >> main.goecho >> main.goecho "func main() {" >> main.goecho " config.LoadConfig()" >> main.goecho " fmt.Println(\"Hello $PRO_NAME!\")" >> main.goecho "}" >> main.goecho "All Done!"
阅读全文
0 0
- Golang工程自动创建脚本
- 创建Lua工程脚本
- 用户自动创建脚本
- VS脚本自动备份工程
- 自动生成创建索引脚本
- linux自动创建用户脚本
- shell脚本自动创建用户
- shell脚本 - 自动创建用户
- 自动创建多张表的脚本
- 自动创建docker容器脚本
- MTK android创建新工程脚本
- 一个创建工程目录的shell脚本
- Eclipse 新建Android工程自动创建appcompat_v7
- 通过nodejs自动创建前端工程文件
- 使用Generator逆向工程 自动创建代码
- Myeclipse如何自动创建hibernate,将工程转变为hibernate工程
- Golang 工程自管理
- golang 工程目录结构
- nested exception is org.apache.ibatis.binding.BindingException: Invalid (not found)
- 滑动html
- Golang中参数传递详解
- 关于String里面format问题记录
- pdf突然全部变成KWPS.PDF.9
- Golang工程自动创建脚本
- Android自动化测试-Monkey性能测试
- 千万级高并发负载均衡HAProxy安装及使用示例
- 火狐浏览器所有历史版本下载地址
- 多线程下的单例
- Appium python client 网络连接相关 api 用法
- Maven-介绍
- SpringMVC的@@ModelAttribute的用法
- HTML空格占位符[转]