英文:
How do I evaluate a environment variable using Go's os/exec
问题
你好!以下是你要翻译的内容:
如何让Go语言评估$PATH变量。目前它只是打印"$PATH"。
我有以下代码:
package main
import (
"fmt"
"log"
"os/exec"
)
func main() {
out, err := exec.Command("echo","$PATH").Output()
if err != nil {
log.Fatal(err)
}
fmt.Printf("%s\n",out)
}
请注意,这段代码只是执行了一个命令,并将其输出打印出来,并没有对$PATH变量进行评估。如果你想要评估$PATH变量,你可以使用os包中的os.Getenv函数来获取环境变量的值。例如,你可以使用以下代码来获取$PATH变量的值:
package main
import (
"fmt"
"log"
"os"
)
func main() {
path := os.Getenv("PATH")
fmt.Println(path)
}
希望对你有帮助!如果你有任何其他问题,请随时提问。
英文:
How do I get Go to evaluate the $PATH variable. I currently just prints
"$PATH"
I have the following code
package main
import (
"fmt"
"log"
"os/exec"
)
func main() {
out, err := exec.Command("echo","$PATH").Output()
if err != nil {
log.Fatal(err)
}
fmt.Printf("%s\n",out)
}
答案1
得分: 5
你需要使用os.Getenv("PATH")
。
package main
import (
"fmt"
"log"
"os/exec"
"os"
)
func main() {
out, err := exec.Command("echo", os.Getenv("PATH")).Output()
if err != nil {
log.Fatal(err)
}
fmt.Printf("%s\n", out)
}
请注意,这是一个Go语言的代码示例,它使用os.Getenv("PATH")
获取环境变量PATH
的值,并将其传递给echo
命令进行输出。
英文:
You need to use os.Getenv("PATH")
package main
import (
"fmt"
"log"
"os/exec"
"os"
)
func main() {
out, err := exec.Command("echo",os.Getenv("PATH")).Output()
if err != nil {
log.Fatal(err)
}
fmt.Printf("%s\n",out)
}
答案2
得分: 1
尝试这样做 -
CommandToRun = os.ExpandEnv(os.Getenv("CommandToRun"))
这将读取CommandToRun
并在其中扩展任何环境变量。
英文:
Try this -
CommandToRun = os.ExpandEnv(os.Getenv("CommandToRun"))
This will read CommandToRun
and expand if there are any env vars in it.
通过集体智慧和协作来改善编程学习和解决问题的方式。致力于成为全球开发者共同参与的知识库,让每个人都能够通过互相帮助和分享经验来进步。
评论