可执行脚本
当创建用于文件操作、数据处理或重复性任务等小型工具或实用程序时,使 Deno 脚本可执行会非常方便,这些任务你可能希望从命令行运行。可执行脚本允许你创建临时的解决方案,而无需设置整个项目。
创建示例脚本 跳转到标题
要使脚本可执行,请以 hashbang(有时称为 shebang)开始脚本。这是一系列字符 (#!),用于告诉你的操作系统如何执行脚本。它后面跟着应该用于运行脚本的解释器的路径。
我们将创建一个简单的脚本,使用 Deno.env API 打印 Deno 安装路径。
创建一个名为 hashbang.ts
的文件,内容如下
hashbang.ts
#!/usr/bin/env -S deno run --allow-env
const path = Deno.env.get("DENO_INSTALL");
console.log("Deno Install Path:", path);
此脚本告诉系统使用 deno 运行时来运行脚本。-S 标志将命令拆分为参数,并指示应将以下参数 (deno run --allow-env
) 传递给 env 命令。
然后,该脚本使用 Deno.env.get()
检索与名为 DENO_INSTALL
的环境变量关联的值,并将其分配给名为 path
的变量。最后,它使用 console.log()
将路径打印到控制台。
执行脚本 跳转到标题
为了执行脚本,你可能需要授予脚本执行权限,你可以使用带有 +x
标志(用于执行)的 chmod
命令来执行此操作。
chmod +x hashbang.ts
你可以直接在命令行中执行脚本,使用:
./hashbang.ts
在没有扩展名的文件中使用 hashbang 跳转到标题
为了简洁起见,你可能希望省略脚本文件名的扩展名。在这种情况下,请在脚本本身中使用 --ext
标志提供一个扩展名,然后你可以仅使用文件名运行脚本。
my_script
$ cat my_script
#!/usr/bin/env -S deno run --allow-env --ext=js
console.log("Hello!");
$ ./my_script
Hello!
🦕 现在你可以直接从命令行执行 Deno 脚本了!请记住为你的脚本文件设置执行权限 (chmod +x
),你就可以构建从简单实用程序到复杂工具的任何东西。查看 Deno 示例,从中获得你可以编写脚本的灵感。