问题标签 [shelljs]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
2 回答
489 浏览

javascript - 如何使用 shelljs 打开 javascript 命令行

我一直在为我的一个项目使用 shelljs,发现了这个小问题。

当我执行此脚本时,它不会打开 de javascript 命令行,而是就像终端正在等待诸如进位返回之类的东西。

这就是发生的事情

0 投票
0 回答
137 浏览

node.js - 如果尝试从标准输入中读取某些东西,那么玩笑测试失败的好方法是什么?

我正在使用shelljsjest来测试一个 shell 脚本。如果 shell 脚本没有找到它正在寻找的某些变量,它将回退到交互模式,并且对于大多数测试,应该设置变量,因此不应该发生这种情况。

所以,我想要的是如果进程试图从stdin. 我有一种直觉,我可以通过 mocking 来做到这一点stdin,但是看了一眼 Node processAPI,我没有看到与“等待输入”或其他任何东西相对应的事件,所以我转向了社区。

例如,如果 shell 脚本有类似的东西:

0 投票
2 回答
1606 浏览

javascript - 异步问题,无法在 .then 之后运行 shelljs 命令

更新:我在写入文件后添加了一个短暂的暂停,直到那时 shell 命令才起作用。


原始问题

我的.then()块后createInsertCurlReq.createInsertCurlReq(process.argv[2])没有运行。我应该如何重写它才能做到这一点?我注意到如果我不删除文件而只是追加到,脚本就会运行。

0 投票
0 回答
366 浏览

node.js - 如何在 nodejs 中运行 tmux cmds

有什么方法可以像nodejs一样运行tmuxcmds 。我在网上搜索过,但找不到任何有用的东西可以帮助我消除错误。tmux kill-servertmuxinator start rails_servers

我正在通过shelljsnpm 模块尝试此操作,但对我没有帮助。

我收到此错误;

Pseudo-terminal will not be allocated because stdin is not a terminal. Permission denied (publickey).

当使用这些代码行tmux通过 nodejs 运行 cmds 时

这里,shell是用于shelljsnpm 模块的变量。

任何帮助将不胜感激。提前致谢。

0 投票
1 回答
707 浏览

node.js - 为什么在使用 shelljs 克隆 git repo 时会出现 NullReferenceException?

我正在尝试编写一个需要克隆 git repo 的相当简单的 nodejs 程序。

抛出如下错误,然后似乎挂起而不会永远退出:

没有额外的输出或堆栈跟踪,甚至没有行号。发生了什么事,我怎样才能让它工作,或者至少获得关于正在发生的事情和原因的更多信息?

我知道我可以使用 nodegit 或类似的东西而不是使用 shell,但我认为我会受益于理解这里发生的事情如何解决输出如此稀疏的情况。

0 投票
1 回答
70 浏览

javascript - 在 expressJS 应用程序中,是否可以在脚本执行时实时收集写入控制台的数据?

我正在尝试将 bash 脚本的输出输入到 ExpressJS 应用程序中,然后我可以将数据发送到客户端。我在下面创建了一个脚本,它模仿了我将用于我的项目的实际脚本的输出。我希望能够在写入终端时收集这些数据,将其存储在我的 express 应用程序中的一个变量中,然后我可以通过 SSE 或 websocket 发送数据。

到目前为止我所拥有的:

当有 post 请求时,shellJS 在本地目录中执行一个脚本,并将输出写入控制台。问题是,当脚本完成执行时,数据是一次性写入的,而不是在数据到来时写入。我希望能够与这些数据实时交互。这甚至可能吗?

编辑:子进程是要走的路。这是我为其他有此问题的人提供的解决方案。

0 投票
1 回答
770 浏览

javascript - Using NPM ShellJS to execute a Git command in Node returns an empty string inside `stdout`

I'm using NPM ShellJS to execute the following Git command inside a Node script:

git for-each-ref --sort=v:refname --format "tag: %(refname:strip=2) message: %(subject) date: %(authordate:iso)" refs/tags

If I run this command inside a normal command line window, it works perfectly and results in an output similar to this:

However, when I run this command in Node using ShellJS, the contents of stdout is an empty string:

How do I get the output as specified about, instead of the empty string?

0 投票
1 回答
537 浏览

javascript - 如何通过 html“按钮单击”调用“JS 文件”并且 JS 文件正在使用 shell.js 运行 bash 脚本

我想通过单击 html 按钮连接到“server.js”文件。

“server.js”文件正在使用 shell.js 运行“bash.sh”文件

任何人都可以就如何进行提供一些想法或指导吗?

按钮.html

客户端.js

服务器.js

bash.sh

0 投票
2 回答
421 浏览

typescript - 如何在使用 shelljs 将一个文件夹移动到另一个文件夹时排除某些文件

我在结构存储库下面:

在这里,我想将文件从第三方/src/common移动到src/common,但我必须排除三个.ts文件。

我有像下面这样的 bur 它移动所有文件:

0 投票
0 回答
46 浏览

javascript - 将 Json 文件转换为 JS 文件

我创建了一个模块来导入某个目录中的所有 JSON 文件,现在我想将它们转换为 JS 文件并将它们导出到一个目录中。我想使用 babel 插件或 shellJS 来做到这一点