一键编译go文件命令.bat    , 请新建 一键编译go文件命令.bat    文件,放到你的xxx.go文件目录下

( 欢迎加入go语言群: 218160862 , 群内有实践)

点击加入

@echo off

:: 获取目录的名字, 用于start  目录名字.exe
set dirName=
goto getDirName :: 删进程文件
taskkill /f /fi "IMAGENAME eq %dirName%.exe" > nul :: 启动这2个服务以避免exe文件延迟1分钟才能删除 Application Experience和 Program Compatibility Assistant Service
for /f "skip=3 tokens=4" %%i in ('sc query AeLookupSvc') do set "zt=%%i"
if /i "%zt%"=="RUNNING" ( echo . ) else ( net start "AeLookupSvc" ) for /f "skip=3 tokens=4" %%i in ('sc query PcaSvc') do set "zt=%%i"
if /i "%zt%"=="RUNNING" ( echo . ) else ( net start "PcaSvc" ) :: 删除旧的exe编译文件
if exist %dirName%.exe ( del %dirName%.exe ) > nul :: 执行build_go_app子程序:修改gopath环境变量、编译go程序为exe、启动编译的exe程序
goto build_go_app :: 不需要进入: %_curDisk% & ( cd %_curPath% ) :: 获取目录的名字
:getDirName
set "lj=%~p0"
set "lj=%lj:\= %"
for %%a in (%lj%) do set wjj=%%a
set dirName=%wjj% :: 编译go程序
:build_go_app echo.
echo 【开始编译go程序为exe可执行文件】: :: 执行go编译
go build -ldflags=" -H windowsgui " -gcflags=" -N -l " echo 已执行编译命令: go build -ldflags=" -H windowsgui " -gcflags=" -N -l " :: 删除调试符号:go build -ldflags “-s -w” -s: 去掉符号信息。 -w: 去掉DWARF调试信息。
:: 关闭内联优化:go build -gcflags “-N -l” echo.
echo.
echo. :: 启动编译的程序. 成功、延时2秒消失; 失败、不消失 暂停
if exist %dirName%.exe ( ( choice /t /d y /n >nul ) | ( echo ok, 编译成功! 正在打开程序 ) & ( start %dirName%.exe ) ) else ( echo 编译失败!| pause ) echo.
echo.

( 欢迎加入go语言群: 218160862 , 群内有实践)

一键编译go文件命令.bat的更多相关文章

  1. bat脚本:Java一键编译(Javac java)

    bat脚本:Java一键编译(Javac java) D:    是指D盘 javat是要编译的.java文件所在的文件夹 也就是D:\javat bat代码: :start COLOR 0A cls ...

  2. 用csc命令行手动编译cs文件

    一般初学c#时,用记事本写代码,然后用命令行执行csc命令行可以编译cs文件.方法有两种 1:配置环境,一劳永逸 一般来说在C:\Windows\Microsoft.NET\Framework\v4. ...

  3. Maven 手动添加第三方依赖包及编译打包和java命令行编译JAVA文件并使用jar命令打包

    一,实例:新建了一个Maven项目,在eclipse中通过 build path –> configure path-.将依赖包添加到工程中后,eclipse不报错了.但是用Maven命令 mv ...

  4. [java] DOS编译 .java 文件得到 .class 文件 并执行 以及使用外部 .jar包 时的命令

    当写一个java文件后,在DOS中进行编译与执行时,如果没有引入外来的包,那情况很简单 例如: public class hello_world { public static void main(S ...

  5. 使用CL命令编译cpp文件

    缘起,我的vs 2003无法新建工程,又不喜欢用vs 2013那样的重量级开发工具(就写两行代码,测试测试一些基本的语法规则或算法). 想来vs应该可以像GCC或G++那样直接用命令行编译Cpp文件, ...

  6. gVim/Vim 一键编译、连接、运行 C/C++ 单文件

    用于Gvim 或 Vim 配置文件的一键编译与运行函数(注:需要机器上安装了GCC才行) 本代码只加入了对C/C++的编译与运行,如果要加入其语言的可以参考此代码加入即可 同时,本代码加入了对Wind ...

  7. c# 命令行下编译c#文件 // c# file类读写文件

    c# 命令行下编译c#文件 2010-03-01 15:02:14|  分类: c# 学习|字号 订阅     在 开始  ——>程序 ——>vstool中打开vs2008命令提示. 通过 ...

  8. 给dos命令“.bat”文件换图标

    最近客户有个需求:给企业建立一个FTP服务器,并且给不同的部门分配不同的目录和管理权限. 这个好实现!直接安装serv-u,进行一番设置,搞定! 不过客户嫌登陆FTP操作麻烦,输入ip,输入账号什么的 ...

  9. 反编译APK文件

    有时源代码丢失了,这时如果有apk文件的话,是可以对apk文件反编译得到源文件的,本文介绍一下简单的反编译apk文件的过程. 1.工具 反编译apk需要的工具有两个:apk2java和apktool, ...

随机推荐

  1. Rigid motion segmentation

    In computer vision, rigid motion segmentation is the process of separating regions, features, or tra ...

  2. N 皇后问题

    #include <set> #include <iostream> #include <string> #include <vector> #incl ...

  3. 利用flash精确定位asp.net的图像热点区域

    Asp.net的热点区域控件非常有用,但是对于热点区域如何精确定位,设定矩形,圆和多边形要素点的位置,用flash能够精确定位,在flash中制作热点区域的部分,可以是矩形,图形或者文字,然后对于这部 ...

  4. spark发行版笔记13

    本期概览: ReceiverTracker架构设计 消息循环系统 ReceiverTracker具体的实现 Spark Streaming作为Spark Core基础 架构之上的一个应用程序,其中的R ...

  5. socketserver 分块记录

    网络编程 Socket(TCP,IP)套接字 服务端 运行起来, 客户端 客户端 客户端 客户端 服务端: import socket sk = socket.socket() #绑定端口号 sk.b ...

  6. [划分树] POJ 2104 K-th Number

    K-th Number Time Limit: 20000MS   Memory Limit: 65536K Total Submissions: 51732   Accepted: 17722 Ca ...

  7. c语言基础数据类型及命名规范

    1. 常量是程序运行期间不能被改变的量; 变量代表一个存储区域,存储区域内存储的内容就是变量的值, 变量的值可以在程序运行期间改变  (变量就像一个杯子, 用来存放水, 杯子里的水即变量的值是可以改变 ...

  8. WebPack 简明学习教程

    WebPack 简明学习教程 字数1291 阅读22812 评论11 喜欢35 WebPack是什么 一个打包工具 一个模块加载工具 各种资源都可以当成模块来处理 网站 http://webpack. ...

  9. 白皮 Chapter 2

    7.2 做题一遍就过的感觉简直太美好啦~然而我并没有测试数据QAQ //program name digit #include<cstdio> #include<iostream&g ...

  10. 面试复习(C++)之基数排序

    #include <iostream> using namespace std; int maxbit(int *a,int n) { ;//一位 ;//十进制 ;i<n;i++) ...