gpt4 book ai didi

shell - 如何从 shell 脚本调用 deno?

转载 作者:行者123 更新时间:2023-12-03 21:12:16 24 4
gpt4 key购买 nike

我有一个我想运行的脚本......也许是这样的:

#!/usr/bin/env deno

console.log('hello world');
shebang 部分令人困惑。当我像上面那样做时,文件名 dev ,我得到: error: Found argument './dev' which wasn't expected, or isn't valid in this context当我尝试将shebang更改为 #!/usr/bin/env deno run
我得到 /usr/bin/env: ‘deno run’: No such file or directory关于如何解决这个问题的任何想法?

最佳答案

为了将命令选项传递给 deno来自 env ,您需要 -S环境参数。
例如,以下是您应该用于使用 Deno 自运行脚本的最小shebang。

#!/usr/bin/env -S deno run
复杂示例:
以下脚本/shebang 将尽可能静默地运行 Deno,拥有所有权限,并假设存在 import_map.json文件旁边的脚本文件。
#!/usr/bin/env -S deno -q run --allow-all --import-map="${_}/../import_map.json"
// deno-language: ts

// get file and directory name
const __filename = import.meta.url.replace("file://", "");
const __dirname = __filename.split("/").slice(0, -1).join("/");
// deno-language: ts如果您要创建没有文件扩展名的脚本,这将有所帮助。
带有 __filename 的行和 __dirname将为您提供类似于 Node 执行的变量。

脚本安装程序
Deno 还提供了一种方便的方法,用于在配置的分发位置安装脚本及其权限和依赖项。
见: Deno Manual - Script installer
独立的可执行文件
从 Deno 1.6 开始,您现在也可以从脚本构建独立的可执行文件。
见: Deno Manual - Compiler - Compiling Executables

关于shell - 如何从 shell 脚本调用 deno?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63043929/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com