我正在尝试按照教程说它:
"有几种方法可以加载凭据.
密钥需要如下:
USER_ID, USER_KEY
Run Code Online (Sandbox Code Playgroud)
...这意味着如果您正确设置环境变量,则根本不需要在应用程序中管理凭据."
基于一些谷歌搜索,似乎我需要设置变量process.env?我如何以及在何处设置这些凭据?示例请.
process.env.PORT || 3000在Node.js中使用什么?我在某个地方看到了这个:
app.set('port', process.env.PORT || 3000);
Run Code Online (Sandbox Code Playgroud)
如果它用于设置3000为侦听端口,我可以使用它吗?
app.listen(3000);
Run Code Online (Sandbox Code Playgroud)
如果不是为什么?
在Linux上,我可以这样做:
$ FOO=BAR ./myscript
Run Code Online (Sandbox Code Playgroud)
在设置环境变量FOO的情况下调用"myscript".
在Powershell中是否有类似的可能,即无需先设置变量,调用命令,然后再次取消设置变量?
为了更清楚我的用例 - 我不想将它作为脚本的一部分使用.相反,我有一个第三方脚本,其行为我可以使用环境变量控制,但在这种情况下,不是命令行参数.因此能够在打字之间交替
$ OPTION=1 ./myscript
Run Code Online (Sandbox Code Playgroud)
和
$ ./myscript
Run Code Online (Sandbox Code Playgroud)
会非常方便.
目的
将环境变量更改隔离到代码块.
背景
如果我想创建一个批处理脚本来运行需要环境变量集的命令,我知道我可以这样做:
setlocal
set MYLANG=EN
my-cmd dostuff -o out.csv
endlocal
Run Code Online (Sandbox Code Playgroud)
但是,当我需要使用shell脚本语言时,我倾向于使用PowerShell.我知道如何设置环境变量($env:TEST="EN"),当然这只是一个简单的例子.但是,我不确定如何使用批处理脚本实现相同的效果.令人惊讶的是,我也没有看到任何问题.
我知道设置的东西$env:TEST="EN"是进程范围的,但如果我在单个终端会话中使用脚本作为小实用程序,则这是不实际的.
我目前的方法:
setlocal.但那不是一个小虫......我希望.$env:似乎没有太大的不同$global:)函数范围并不胜过引用 $env:
$env:TEST="EN"
function tt {
$env:TEST="GB"
($env:TEST)
}
($env:TEST)
tt
($env:TEST)
Run Code Online (Sandbox Code Playgroud)
输出:
C:\Users\me> .\eg.ps1
EN
GB
GB
Run Code Online (Sandbox Code Playgroud) 如何在 Windows 上为 Linux 编译 go 文件/项目?
在 Linux 上,它应该可以通过 one-liner 实现:
GOOS=windows go build -o filename.exe codefile.go
Run Code Online (Sandbox Code Playgroud)
我通过 Powershell 尝试了类似的东西,但在我的 Linux 服务器(Ubuntu 16.04 amd64)上只出现一个错误:
-bash: ./gotest: 无法执行二进制文件:Exec 格式错误”。
我在 Powershell 中尝试使用用户 Env-vars for GOOS = linuxandGOARCH = amd64和 via set GOOS = linux,但我对 Powershell 了解不够 - go build 命令运行时没有错误并生成文件。
任何人都可以使用 go-1.10 通过 Powershell(或 cmd)(通过 VS Code)解释 Windows(10 1709 x64)上的一般操作方法吗?
powershell ×3
node.js ×2
environment ×1
express ×1
go ×1
port ×1
scripting ×1
variables ×1
windows ×1