`
solomonqbq
  • 浏览: 4800 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

shell打包脚本(go)

 
阅读更多
#!/bin/bash
version="0.9"
main_file="monitor.go"
target_dir="./outputdir/"
target_file=""
include_resource="eagle.properties log.properties start.sh stop.sh"
rm -rf $target_dir*
if [ ! -x "$target_dir" ]; then 
	mkdir  -p "$target_dir" 
fi 
if [ -z $target_file ];then
	target_file=${main_file%".go"*}
fi
build_command="go build -o $target_dir$target_file $main_file"
echo $build_command
$build_command
cp -r $include_resource $target_dir
cd $target_dir
tar zcvf $target_file-$version.tar.gz *
cd -
#!/bin/bash
current_path=`pwd`
case "`uname`" in
    Linux)
		bin_abs_path=$(readlink -f $(dirname $0))
		;;
	*)
		bin_abs_path=`cd $(dirname $0); pwd`
		;;
esac

if [ -f $bin_abs_path/pid ] ; then
	echo "found pid:`cat $bin_abs_path/pid` , Please run stop.sh first ,then startup.sh" 2>&2
    exit 1
fi
nohup $bin_abs_path/monitor  1>>$bin_abs_path/nohup.out 2>&1 & 
echo $! > $bin_abs_path/pid 
echo "start successfully!"

  

#!/bin/bash
current_path=`pwd`
case "`uname`" in
    Linux)
		bin_abs_path=$(readlink -f $(dirname $0))
		;;
	*)
		bin_abs_path=`cd $(dirname $0); pwd`
		;;
esac
echo $bin_abs_path
if [ -f $bin_abs_path/pid ] ; then
	kill  `cat $bin_abs_path/pid`
	echo "stop successfully!"
else 
	echo "not found $bin_abs_path/pid!"
fi
rm $bin_abs_path/pid 

 

分享到:
评论

相关推荐

    Go-release.sh一个shell脚本用于在GitHub上构建和发布Go程序

    在Go语言的开发过程中,有时候我们需要自动化处理构建和发布的过程,以提高效率并减少人为错误。`Go-release.sh`是一个专为此目的设计的shell脚本,它简化了在GitHub平台上构建和部署Go程序的流程。这个脚本是开发者...

    随处运行K3s_Go_Shell_下载.zip

    Go Shell,也称为gosh,是一个用Go语言编写的命令行工具,它提供了交互式的shell环境,能够方便地执行脚本和命令,尤其适合自动化任务和部署流程。结合K3s,Go Shell可以实现一键式K3s集群部署,提高效率。 3. **...

    golang_qt2deb:将使用therecipeqt的golang项目打包成deb文件

    golang_qt2deb帮助使用therecipe/qt的golang项目将编译好的目标打包成为deb文件。支持将desktop files一同打包。目前配置文件等额外文件需要自行添加仅脚本生成的build目录里,同时需要给脚本加上--nobuild参数。...

    k8s单节点集群-kind部署

    根据kind英文官网教程部署总结,并编写成一键shell部署脚本。 脚本上有已下载好的镜像资源,kind和...2. 安装kind所需的go语言环境,kind 工具,kubectl工具 3. 自动配置好环境变量 4. kind创建集群,显示集群信息

    jenkins+docker实现自动编译、打包、构建镜像、容器部署

    开发push代码到gitlab,触发jenkins自动pull代码,通过maven编译、打包,然后通过执行shell脚本使docker构建镜像并push到私服(或者阿里云)仓库,此操作完成后jenkins服务器上再执行SSH命令登录到部署服务器,...

    paral:并行启动命令,shell脚本。 设计作为GNU并行的替代替代品

    并行启动命令,shell脚本。 设计为GNU并行的替代/替换。 安装 通常: go get github.com/amattn/paral 如果安装了go工具链,则它应该只出现在您的GOPATH 。 最终,我将打包发布版本,以供下载,为 用法 paral ...

    Go-deployr一个简单的golang应用程序用于自动部署软件版本

    在实际使用中,Go-deployr的部署过程通常是这样的:首先,开发者将应用的最新版本打包并准备好传输;然后,通过配置文件或命令行参数设定目标服务器的SSH连接信息;接着,Go-deployr会建立安全连接,并将更新的...

    windows下一键编译打包arm程序

    - **编译脚本**:这个脚本可能是批处理文件(.bat)或shell脚本(.sh),用于自动化编译过程,包括设置环境变量、调用编译器、链接器等步骤。 - **交叉编译工具链**:包括arm-none-eabi-gcc等工具,用于编译和链接...

    Go-go-mysql-elasticsearch-自动同步你的MySQL数据到Elasticsearch

    5. **构建脚本**:用于构建和打包项目的 shell 脚本或 Makefile。 6. **许可证文件**:定义了软件的使用和分发条款。 使用 `go-mysql-elasticsearch` 通常涉及以下几个步骤: 1. **安装**:首先,你需要在你的系统...

    devops:基于 Vagrant 的 Virtualbox 设置构建打包镜像、go 文件和 docker 容器

    基于 Vagrant 的 Virtualbox 设置构建打包镜像、go 文件和 docker 容器。 用法 在开始之前,请务必安装 Virtualbox 和 Vagrant。 如果你还没有设置你的机器进行开发,你可以在使用我们的 OSX 设置脚本 将此 repo ...

    开源项目-Xeoncross-macappshell.zip

    【开源项目-Xeoncross-macappshell.zip】是一个面向Mac OS X操作系统的开源项目,它的主要功能是通过一个简单的bash脚本创建一个`.app`包装器,使得Go语言编译的程序可以在Mac上以标准的Mac应用形式运行。...

    Go-Pipeline:基于Node的自动化服务器

    3. **脚本**:执行特定任务的脚本,如测试脚本、构建脚本或部署脚本,可能使用Shell、Python、Ruby等语言编写。 4. **依赖管理**:`package.json`文件列出所有必要的npm模块,可能还有Go的`go.mod`文件来管理Go依赖...

    simple-golang-ci-cd:简单实施golang单元测试和CI CD(交付和部署)

    在部署阶段,可能使用`shell`脚本配合Golang的`go build`或`go run`命令,以及环境变量、配置文件等,来打包和推送应用到目标服务器。例如,使用`scp`或`rsync`进行文件传输,`ssh`进行远程操作,或者利用Docker容器...

    开源项目-murlokswarm-app.zip

    4. **构建脚本**:用于编译和打包应用的shell脚本或Makefile,这些脚本会调用go build或go install命令来生成可执行文件。 5. **测试文件**:Go语言鼓励单元测试,项目中可能会包含测试用例,确保代码质量。 【项目...

    开源项目-mkideal-cli.zip

    - `Makefile`或`build.sh`:构建和打包脚本,用于编译和测试项目。 为了充分利用mkideal-cli,你应该阅读项目的README文件,了解如何安装、配置和使用。同时,通过查看源代码,你可以学习到Golang中实现命令行工具...

    checkService.zip

    Docker是一种开源的应用容器引擎,它基于Go语言并遵从Apache2.0协议开源。Docker可以让开发者打包他们的应用以及依赖包到一个可移植的容器中,然后发布到任何流行的Linux机器或Windows上,也可以实现虚拟化。容器是...

    packer:机器图像自动打包机

    3. **配置和定制**:在这个阶段,Packer可能会运行shell脚本、使用配置管理工具进行系统配置,或者执行其他自定义操作。 4. **验证和快照**:一旦定制完成,Packer会对结果进行验证,并在虚拟环境中创建一个快照,...

    mcci-catena-ci:MCCI Catena项目的连续集成框架

    2. **Shell脚本**:Shell脚本可以用于执行一系列命令,如编译代码、运行测试、打包应用等。在CI环境中,Shell脚本可以被配置为响应代码仓库的更新,自动化执行一系列任务。 3. **Git与版本控制**:在CI中,Git是最...

    action-go-build-cross-platform

    Go语言,也称为Golang,是由Google开发的一种静态类型的、编译式的、并发的、垃圾回收的、C风格的编程语言。它的一个显著特点是支持跨平台编译,能够方便地为不同的操作系统(如Windows、Linux、macOS等)生成可执行...

    开源项目-posener-complete.zip

    【开源项目-posener-complete.zip】是一个基于Go语言编写的开源项目,主要功能是为Bash shell提供自动补全功能。这个项目旨在提升用户在终端使用命令行时的效率,通过智能预测用户可能输入的命令或参数,使得操作...

Global site tag (gtag.js) - Google Analytics