deno.com
本页内容

deno run,运行文件

命令行用法

deno run [OPTIONS] [SCRIPT_ARG]...

运行 JavaScript 或 TypeScript 程序,或任务或脚本。

默认情况下,所有程序都在沙箱中运行,无法访问磁盘、网络或生成子进程。

deno run https://examples.deno.land/hello-world.ts

授予从磁盘读取和监听网络的权限

deno run --allow-read --allow-net jsr:@std/http/file-server

授予从磁盘读取允许列表文件的权限

deno run --allow-read=/etc jsr:@std/http/file-server

授予所有权限

deno run -A jsr:@std/http/file-server

指定文件名 '-' 以从 stdin 读取文件。

curl https://examples.deno.land/hello-world.ts | deno run -

类型检查选项 Jump to heading

--check Jump to heading

启用类型检查。默认情况下,此子命令不执行类型检查。如果提供 "all" 值,将包括远程模块。或者,可以使用 'deno check' 子命令。

--no-check Jump to heading

跳过类型检查。如果提供 "remote" 值,则将忽略来自远程模块的诊断错误。

依赖管理选项 Jump to heading

--cached-only Jump to heading

要求远程依赖项已缓存。

--frozen Jump to heading

如果 lockfile 过期,则报错。

--import-map Jump to heading

从本地文件或远程 URL 加载导入映射文件。

--lock Jump to heading

检查指定的 lock 文件。(如果未提供值,则默认为 "./deno.lock")。

--no-lock Jump to heading

禁用自动发现 lock 文件。

--no-npm Jump to heading

不解析 npm 模块。

--no-remote Jump to heading

不解析远程模块。

--node-modules-dir Jump to heading

设置 npm 包的 node modules 管理模式。

--reload Jump to heading

短标志:-r

重新加载源代码缓存(重新编译 TypeScript) 无值 重新加载所有内容 jsr:@std/http/file-server,jsr:@std/assert/assert-equals 重新加载特定模块 npm: 重新加载所有 npm 模块 npm:chalk 重新加载特定 npm 模块。

--vendor Jump to heading

切换本地 vendor 文件夹用于远程模块,以及 node_modules 文件夹用于 npm 包。

选项 Jump to heading

--allow-scripts Jump to heading

允许为给定软件包运行 npm 生命周期脚本 注意:脚本仅在使用 node_modules 目录 (--node-modules-dir) 时执行。

--cert Jump to heading

从 PEM 编码文件加载证书颁发机构。

--config Jump to heading

短标志:-c

配置 deno 的不同方面,包括 TypeScript、代码检查和代码格式化。通常配置文件将名为 deno.jsondeno.jsonc 并自动检测;在这种情况下,此标志不是必需的。

--env-file Jump to heading

从本地文件加载环境变量。仅使用具有给定键的第一个环境变量。现有进程环境变量不会被覆盖,因此如果环境中已存在同名变量,则将保留其值。如果您的 .env 文件中存在同一环境变量的多个声明,则应用遇到的第一个声明。这由您作为参数传递的文件的顺序决定。

--ext Jump to heading

设置所提供文件的内容类型。

--location Jump to heading

globalThis.location 的值,供某些 web API 使用。

--no-code-cache Jump to heading

禁用 V8 代码缓存功能。

--no-config Jump to heading

禁用自动加载配置文件。

--seed Jump to heading

设置随机数生成器种子。

--v8-flags Jump to heading

要查看所有可用标志的列表,请使用 --v8-flags=--help。标志也可以通过 DENO_V8_FLAGS 环境变量设置。使用此标志设置的任何标志都将附加在 DENO_V8_FLAGS 环境变量之后。

调试选项 Jump to heading

--inspect Jump to heading

在 host:port 上激活检查器 [默认值:127.0.0.1:9229]

--inspect-brk Jump to heading

在 host:port 上激活检查器,等待调试器连接并在用户脚本开始时中断。

--inspect-wait Jump to heading

在 host:port 上激活检查器,并在运行用户代码之前等待调试器连接。

文件监视选项 Jump to heading

--hmr Jump to heading

监视文件更改并自动重启进程。默认情况下,会监视来自入口点模块图的本地文件。可以通过将其他路径作为参数传递给此标志来监视它们。

--no-clear-screen Jump to heading

在监视模式下,不要清除终端屏幕。

--watch Jump to heading

监视文件更改并自动重启进程。默认情况下,会监视来自入口点模块图的本地文件。可以通过将其他路径作为参数传递给此标志来监视它们。

--watch-exclude Jump to heading

从监视模式中排除提供的文件/模式。

用法 Jump to heading

要运行 此文件,请使用

deno run https://docs.deno.org.cn/examples/scripts/hello_world.ts

您也可以在本地运行文件。确保您在正确的目录中并使用

deno run hello-world.ts

默认情况下,Deno 在沙箱中运行程序,无法访问磁盘、网络或生成子进程。这是因为 Deno 运行时默认是安全的。您可以使用 --allow-*--deny-* 标志授予或拒绝所需的权限。

权限示例 Jump to heading

授予从磁盘读取和监听网络的权限

deno run --allow-read --allow-net server.ts

授予从磁盘读取允许列表文件的权限

deno run --allow-read=/etc server.ts

授予所有权限 不建议这样做,仅应用于测试

deno run -A server.ts

如果您的项目需要多个安全标志,您应该考虑使用 deno task 来执行它们。

监视 Jump to heading

要监视文件更改并自动重启进程,请使用 --watch 标志。Deno 的内置应用程序监视器将在文件更改后立即重启您的应用程序。

请务必将标志放在文件名前面 例如

deno run --allow-net --watch server.ts

Deno 的监视器将在控制台中通知您更改,并在您工作时控制台中出现错误时发出警告。

运行 package.json 脚本 Jump to heading

package.json 脚本可以使用 deno task 命令执行。

从 stdin 运行代码 Jump to heading

您可以从 stdin 管道代码并立即运行它,使用

curl https://docs.deno.org.cn/examples/scripts/hello_world.ts | deno run -

终止运行 Jump to heading

要停止运行命令,请使用 ctrl + c

您找到所需的信息了吗?

隐私政策