本页内容
deno install
,脚本安装程序
Deno 提供 deno install
来轻松安装和分发可执行代码。
deno install [OPTIONS...] [URL] [SCRIPT_ARGS...]
将在 EXE_NAME
下安装 URL
可用的脚本。
此命令创建一个薄的、可执行的 shell 脚本,它使用指定的 CLI 标志和主模块调用 deno
。它被放置在安装根目录的 bin
目录中。
示例
$ deno install --allow-net --allow-read https://deno.land/std/http/file_server.ts
[1/1] Compiling https://deno.land/std/http/file_server.ts
✅ Successfully installed file_server.
/Users/deno/.deno/bin/file_server
要更改可执行文件名,请使用 -n
/--name
deno install --allow-net --allow-read -n serve https://deno.land/std/http/file_server.ts
可执行文件名默认情况下会推断
- 尝试获取 URL 路径的文件名。上面的示例将变为 'file_server'。
- 如果文件名是类似 'main'、'mod'、'index' 或 'cli' 的通用名称,并且路径没有父级,则获取父路径的文件名。否则,使用通用名称。
- 如果结果名称具有 '@...' 后缀,则将其删除。
要更改安装根目录,请使用 --root
deno install --allow-net --allow-read --root /usr/local https://deno.land/std/http/file_server.ts
安装根目录的确定顺序为
--root
选项DENO_INSTALL_ROOT
环境变量$HOME/.deno
如果需要,必须手动将这些添加到路径中。
echo 'export PATH="$HOME/.deno/bin:$PATH"' >> ~/.bashrc
您必须指定在安装时将用于运行脚本的权限。
deno install --allow-net --allow-read https://deno.land/std/http/file_server.ts -- -p 8080
上面的命令创建一个名为 file_server
的可执行文件,它以网络和读取权限运行,并绑定到端口 8080。
为了良好的实践,请使用 import.meta.main
惯例来指定可执行脚本中的入口点。
示例
// https://example.com/awesome/cli.ts
async function myAwesomeCli(): Promise<void> {
// -- snip --
}
if (import.meta.main) {
myAwesomeCli();
}
当您创建可执行脚本时,请确保通过在您的存储库中添加一个示例安装命令来让用户知道。
# Install using deno install
$ deno install -n awesome_cli https://example.com/awesome/cli.ts
卸载 跳转到标题
您可以使用 deno uninstall
命令卸载脚本。
$ deno uninstall file_server
deleted /Users/deno/.deno/bin/file_server
✅ Successfully uninstalled file_server
有关更多详细信息,请参见 deno uninstall -h
。