Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/shell/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
shell脚本如何使用$variable_Shell_Makefile_Sh - Fatal编程技术网

shell脚本如何使用$variable

shell脚本如何使用$variable,shell,makefile,sh,Shell,Makefile,Sh,我正在做一个Makefile,但我不能返回$var的值,以便在条件句中使用它: #!/bin/sh GO=$(shell) go GOPATH=$(GO) env GOPATH make: @$(GOPATH) @if [ ! -d "$(GOPATH)/bin" ]; then mkdir -p "$(GOPATH)/bin" ; fi 当我键入make时,@$GOPATH返回/home/icvallejo/go,但之后,我不知道如何在“if”条件下使用它(我不能这样做)

我正在做一个Makefile,但我不能返回$var的值,以便在条件句中使用它:

#!/bin/sh

GO=$(shell) go
GOPATH=$(GO) env GOPATH

make:
    @$(GOPATH)
    @if [ ! -d "$(GOPATH)/bin" ]; then mkdir -p "$(GOPATH)/bin" ; fi
当我键入
make
时,
@$GOPATH
返回
/home/icvallejo/go
,但之后,我不知道如何在“if”条件下使用它(我不能这样做),
make
返回以下内容:

如果[!-d“go env GOPATH/bin”];然后mkdir-p“go env GOPATH/bin”;fi


你能帮我吗?

什么是
go
和使用is
GOPATH
?我想执行$go env GOPATH以获取GOPATH(golang)并将其保存在$GOPATH中。事实上,它与
gmake
一起工作,但与
make
#!/bin/sh

GO := go
GOPATH := $(shell $(GO) env GOPATH)

make:
    @echo $(GOPATH)
    @if [ ! -d "$(GOPATH)/bin" ]; then mkdir -p "$(GOPATH)/bin" ; fi