虚位以待(AD)
虚位以待(AD)
首页 > 软件编程 > GO语言 > linux中用shell快速安装配置Go语言的开发环境

linux中用shell快速安装配置Go语言的开发环境
类别:GO语言   作者:码皇   来源:互联网   点击:

相信每位开发者都知道选择一门开发语言,免不了需要安装配置开发环境,所以这篇文章给大家分享了linux下使用shell一键安装配置GO语言开发环境的方法,有需要的朋友们可以参考借鉴,下面来一起看看吧。

介绍

go1.5+版本提供编译好的安装包,我们只需要解压到相应的目录,并添加一些环境变量的配置即可。

Go语言的安装步骤

     下载安装包go1.7.linux-amd64.tar.gz

     解压文件到指定目录: tar -zxf go1.7.linux-amd64.tar.gz

     设置环境变量:GOROOT, GOPATH, PATH

既然我们可以列出这些步骤,那么便可以将整个过程自动化。

下面是安装脚本

    #!/bin/bash#Upgrade go version to 1.7#wget https://storage.googleapis.com/golang/go1.7.linux-amd64.tar.gz go1.7.tar.gzfunction info() {
    echo -e "33[1;
    34m$1 33[0m"}
    function warn() {
    echo -e "33[0;
    33m$1 33[0m"}
    function error() {
    echo -e "33[0;
    31m$1 33[0m"}
    function usage() {
    info "Upgrade or install golang..." info "USAGE:" info " ./upgrade.sh tar_file gopath" info " tar_file specify where is the tar file of go binary file" info " gopath specify where is the go workspace, include src, bin, pkg folder"}
    function createGoPath() {
    if [ ! -d $1 ];
    then mkdir -p $1 fi if [ ! -d "$1/src" ];
    then mkdir "$1/src" fi if [ ! -d "$1/bin" ];
    then mkdir "$1/bin" fi if [ ! -d "$1/pkg" ];
    then mkdir "$1/pkg" fi}
    if [ -z $1 ];
    then usage exit 1fifile=$1if [ ! -f $file ];
    then error "${
    file}
    not exist..." exit 1fiunzipPath="`pwd`/tmp_unzip_path/"info $unzipPathif [ ! -d $unzipPath ];
    then info "not exist" mkdir $unzipPathfitar -zxf $file -C $unzipPathgoroot=$GOROOTif [ ! -n $GOROOT ];
    then warn "Use default go root /usr/local/go" goroot="/usr/local/go"figopath=$2info "Create go workspace, include src,bin,pkg folder..."if [ -z $2 ];
    then user=`whoami` gopath="/home/$user/workspace/golang" warn "Use $gopath as golang workspace..." if [ ! -d $gopath ];
    then mkdir -p $gopath fificreateGoPath $gopathinfo "Copy go unzip files to $goroot"sudo cp -r "$unzipPath/go" $gorootrm -rf $unzipPath#etcProfile="/home/user/Desktop/etc"etcProfile="/etc/profile"exportGoroot="export GOROOT=$goroot"if [ ! -z $GOROOT ];
    then cat $etcProfile | sed 's/^export.GOROOT.*//' | sudo tee $etcProfile > /dev/nullfiecho $exportGoroot | sudo tee -a $etcProfileexportGopath="export GOROOT=$gopath"if [ ! -z $GOPATH ];
    then cat $etcProfile | sed 's/^export.GOPATH.*//' | sudo tee $etcProfile > /dev/nullfiecho "export GOPATH=$gopath" | sudo tee -a $etcProfileecho 'export PATH=$GOROOT/bin:$GOPATH/bin:$PATH' | sudo tee -a $etcProfile# ## Replace multiple empty lines with one empty linecat $etcProfile -s | sudo tee $etcProfile > /dev/nullinfo "To make configuration take effect, will reboot, pls enter[y/n]"read -p "[y/n]" isRebootif [ $isReboot = "y" ];
    then sudo rebootfi

讲一讲脚本做的事情吧

     1、脚本要求输入编译好的安装包,这里本来是可以做成直接下载的, 但是考虑到大多数人是无法连接到golang的官网的,因此放弃了这一步。

     2、解压文件到指定的目录, 默认为/usr/local/go , 也可以通过运行时指定

     3、在GOPATH下面创建3个文件夹: src, bin, pkg, GOPATH可以运行时指定,默认为/home/{user}/workspace/golang

     4、设置环境变量: $GOPATH, $GOROOT

     5、重启服务,使对/etc/profile的修改生效

这里有一些主意的点是,有可能系统配置过golang的环境变量, 那么需要先删除这些配置,然后重新写入。

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作能带来一定的帮助,如果有疑问大家可以留言交流。

相关热词搜索: linux 配置golang golang 环境配置 linux