作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个我想运行的脚本......也许是这样的:
#!/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
复杂示例:
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 执行的变量。
关于shell - 如何从 shell 脚本调用 deno?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/63043929/
我是一名优秀的程序员,十分优秀!