问题标签 [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 投票
1 回答
100 浏览

r - shelljs 执行卡在 DigitalOcean 上

我有一个React托管在DigitalOcean( Ubuntu 16.04) 上的网络应用程序。R该应用程序在后端 ( ) 上有一个脚本,nodeshelljs( shCMDcommand 调用R脚本。它永远不会进入 exec 回调):

foreverjs用来启动服务器。它在一个conda环境中运行。因此,当脚本最初开始运行时,我会看到正确的日志输出(R脚本正在运行),它foreverjs为我提供了但很快就会停止生成日志输出。forever浏览器和日志输出中都没有错误。服务器到达我的R脚本中的某个阶段并且以某种方式卡住了。有没有办法弄清楚出了什么问题?你会推荐什么?在本地,一切正常。唯一可能不同的是conda环境,但我希望它会给出错误但没有。

更新

我调查了/var/log/syslog但我没有看到任何OOM错误:https ://www.digitalocean.com/community/questions/python-script-gets-killed

更新

这不是问题:在脚本的同一位置foreverjs运行简单的卡住。node server.jsR

脚本卡在Seurat- 包函数中ScaleData

具有以下输出:

ScaleData 在非标准化值上运行。推荐的工作流程是首先运行 NormalizeData。回归:nUMI | | 0%

但是,当然,它在本地运行良好。并且在服务器上它卡在第二for次循环迭代中,所以一次它在服务器上运行得很好,但第二次它失败了,就好像运行一个进程设置的时间有限一样DigitalOcean

更新

服务器是apache2。我切换到nginx现在服务器运行正常,它没有卡住,问题几乎解决了,只是现在我收到504网关超时错误。

0 投票
1 回答
6948 浏览

reactjs - 通过 ReactJs 代码运行 shell 命令

我有一个文件存储在本地计算机中,并且还连接了一台打印机。因此,通常如果我想将文件打印到连接的打印机,我会在命令提示符下运行以下命令:

因此,例如,如果我在路径中有一个文件/Users/chandrani.chatterjee/Desktop/TestFolder并且在端口上连接了一台打印机,lpt1我将在命令提示符中编写以下命令

所以这会打印我的testfilename.txt

不,我想通过单击 ReactJs 中的按钮来实现这一点。我在网上搜索并发现了shellJs但我不确定如何使用它来触发命令。

我试过了

我也试过

但在这两种情况下都会出错

无法读取 null 的属性“stdout”

如何正确执行此操作?

编辑:

例如,在 .Net 中,可以使用以下代码实现相同的目的:

0 投票
2 回答
111 浏览

node.js - 使用 NodeJs 和 sed 创建新的 Kubernetes 配置文件时出错

我正在使用 Shelljs 和 sed 命令生成新的 K8S 配置文件

然后我通过运行检查 K8S 集群是否正在工作

错误消息看起来像

但是,如果我从 中复制所有内容config-temp,然后将其粘贴到config, kubectl cluster-info作品中。

我没有在网上找到相同的错误信息。我只是想知道是否有人遇到过类似的问题。任何帮手

0 投票
1 回答
433 浏览

javascript - 使用 shelljs 将 exec stdout 与一些文本进行比较

运行sh.exec('whoami')时,我试图比较标准输出,但它不起作用。

我想要做的是,在运行whoami命令后,如果结果变成特定用户,那么我想触发一个动作。

跑步时,

output == 'myusername'即使我完全确定它是真的,因为我已经复制了用户名并将其作为比较字符串放置,所以条件评估为假。

预期的结果是条件评估为真。

0 投票
2 回答
1073 浏览

javascript - 如何使用花括号通过“shelljs”在单个命令中创建多个目录?

如果您在 Linux 终端中运行此命令:

它将创建以下文件夹树(在当前目录中):

当我尝试使用shelljs npm 包做同样的事情时,就会出现问题。

例如,调用以下函数:

结果创建了以下文件树:

换句话说,它是一个名为的文件夹dist,其中包含一个名为{articles,scripts,stylesheets}.

我试过转义花括号,如下所示:

它没有用,所以我加倍努力并逃脱了反斜杠:

那也不起作用,所以我再次加倍并在转义反斜杠之前添加了一个转义反斜杠:

这不起作用,但它确实创建了一个具有不同名称的文件夹:

我该如何解决这个问题?

0 投票
2 回答
307 浏览

angular - 错误消息:Shelljs 0.8.3 及之前版本容易受到命令注入的攻击

将我的项目更新到 Angular 8.0.3 后,我的 github 警报上出现此错误。

这是一个没有补救措施的漏洞。

没有可用的补丁版本。

有人有这方面的任何信息吗?

0 投票
1 回答
195 浏览

node.js - 为文件设置自定义权限并从 JS 中的模式文件夹继承所有权

在 JS 中写入文件后,我需要设置自定义权限并从父目录继承所有权。我shelljs用来运行命令。

我正在运行以下命令来获取父目录的所有者和组:

const ownerGroup = shelljs.exec('ls -la ../ | grep -e "`basename $(pwd)`$" | awk \'{print $3, $4}\'').split(' ');

设置权限和所有权的命令如下:

文件路径在process.env.CONFIG_FILE. 我遇到了chown原样看不到文件路径的问题。该命令结构正确,但路径转移到新行。

0 投票
1 回答
864 浏览

javascript - 如何使用 ShellJS 在 JS NPM 脚本中等待进程

节点版本: v.10.15.3

ShellJS 版本: 0.8.3

操作系统: Windows 10

是否可以等待一个进程完成,然后在 NodeJS 脚本中使用 Windows 系统中的 wait 命令启动另一个进程?

我尝试了以下,没有错误,但是没有打印回声并且some_npm_script没有执行脚本,这可能吗?就像我在下面做的那样?这适用于Linux机器顺便说一句。

类似的命令shell.exec(truncate -s 0 ./somefile.js)有效,但我truncate在 ShellJS 模块的源代码中看不到该命令。

感谢您提供任何帮助,解释为什么它不起作用或任何解决方案或资源,谢谢。

0 投票
1 回答
433 浏览

reactjs - 无法让 npm 运行启动 testcafe 的脚本

我有一个反应项目。我正在尝试使用将使用 testcafe 运行测试的 npm 脚本。该测试使用yargsshelljspackage.json当我在一切正常之外运行测试时,但是当我使用npm run test:local -- --api=local它时它不起作用并且出现错误:

ERROR No tests to run. Either the test files contain no tests or the filter function is too restrictive.

我希望能够运行脚本来开始我的测试。下面是我的代码。谢谢你。

包.json:

index.js:

登录-test.js:

0 投票
2 回答
7919 浏览

node.js - 访问公牛队列以查看来自 nodejs 的作业统计信息

我需要访问公牛队列来查看工作统计并在页面上显示。我bull-repl用来从 CLI 访问队列,如下所示:

我正在尝试使用以下代码从 JS 做同样的事情:

第一个 shell.exec 运行,正在启动bull-repl,但需要在工具内运行的其余代码永远不会执行,我认为这是因为shelljs独立运行每个命令。如何让最后两个命令在工具中运行?