一键编译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. Microsoft.Office.Interop.Excel操作Excel文件时出现的问题及解决方案

    问题描述: Microsoft.Office.Interop.Excel.Worksheet 打不开文件 Microsoft Office Excel 不能访问文件"a.xls". ...

  2. php简写表达式,&& or || 缩写条件语句

    有时候学的多了, 好多小细节 都忘了 ,比如 简单的表达式, 三元表达式   ?:; $aa or $bb 表达式 等等! 写一些简单的表达式,备忘! php用&&和||缩写条件语句 ...

  3. textbox button 模拟fileupload

    方案一:  <%@ Page Language="C#" AutoEventWireup="true" CodeBehind="test.asp ...

  4. 项目总结[2]_svg+ajax+webservice+pSpace sdk实现实时数据的web展示

    1.使用svg实现组态画面和动态数据展示 通过js的定时器调用webservice方法获取数据后更新节点数据 /// <summary>启动定时刷新</summary> fun ...

  5. NSDate 时间

    NSDate *date=[NSDate date]; NSDateFormatter *formatter=[[NSDateFormatter alloc]init]; formatter.date ...

  6. Listview中显示不同的视图布局

    import java.util.ArrayList; import android.app.Activity;import android.content.Context;import androi ...

  7. 【Python扩展阅读【转】】字符串的方法及注释

      capitalize()   把字符串的第一个字符改为大写   casefold()   把整个字符串的所有字符改为小写   center(width)   将字符串居中,并使用空格填充至长度wi ...

  8. 简单研究下Retrofit

    2015-09-24 15:36:26 第一部分: 1. 什么是Retrofit? (点击图片有惊喜) 以上是来自官网的解释,言简意赅,咳咳,我就不翻译了~ 2. 如何使用Retrofit? 2.1 ...

  9. flex中image控件source属性改变的例子

    Download: main.mxml <?xml version="1.0" encoding="utf-8"?> <mx:Applicat ...

  10. java基础之 序列化

    一.序列化和反序列化的概念 把对象转换为字节序列的过程称为对象的序列化.       把字节序列恢复为对象的过程称为对象的反序列化. 对象的序列化主要有两种用途: 1) 把对象的字节序列永久地保存到硬 ...