问题标签 [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.
r - shelljs 执行卡在 DigitalOcean 上
我有一个React
托管在DigitalOcean
( Ubuntu 16.04
) 上的网络应用程序。R
该应用程序在后端 ( ) 上有一个脚本,node
由shelljs
( shCMD
command 调用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.js
R
脚本卡在Seurat
- 包函数中ScaleData
:
具有以下输出:
ScaleData 在非标准化值上运行。推荐的工作流程是首先运行 NormalizeData。回归:nUMI | | 0%
但是,当然,它在本地运行良好。并且在服务器上它卡在第二for
次循环迭代中,所以一次它在服务器上运行得很好,但第二次它失败了,就好像运行一个进程设置的时间有限一样DigitalOcean
。
更新
服务器是apache2
。我切换到nginx
现在服务器运行正常,它没有卡住,问题几乎解决了,只是现在我收到504
网关超时错误。
reactjs - 通过 ReactJs 代码运行 shell 命令
我有一个文件存储在本地计算机中,并且还连接了一台打印机。因此,通常如果我想将文件打印到连接的打印机,我会在命令提示符下运行以下命令:
因此,例如,如果我在路径中有一个文件/Users/chandrani.chatterjee/Desktop/TestFolder
并且在端口上连接了一台打印机,lpt1
我将在命令提示符中编写以下命令
所以这会打印我的testfilename.txt
不,我想通过单击 ReactJs 中的按钮来实现这一点。我在网上搜索并发现了shellJs
但我不确定如何使用它来触发命令。
我试过了
我也试过
但在这两种情况下都会出错
无法读取 null 的属性“stdout”
如何正确执行此操作?
编辑:
例如,在 .Net 中,可以使用以下代码实现相同的目的:
node.js - 使用 NodeJs 和 sed 创建新的 Kubernetes 配置文件时出错
我正在使用 Shelljs 和 sed 命令生成新的 K8S 配置文件
然后我通过运行检查 K8S 集群是否正在工作
错误消息看起来像
但是,如果我从 中复制所有内容config-temp
,然后将其粘贴到config
, kubectl cluster-info
作品中。
我没有在网上找到相同的错误信息。我只是想知道是否有人遇到过类似的问题。任何帮手
javascript - 使用 shelljs 将 exec stdout 与一些文本进行比较
运行sh.exec('whoami')
时,我试图比较标准输出,但它不起作用。
我想要做的是,在运行whoami
命令后,如果结果变成特定用户,那么我想触发一个动作。
跑步时,
output == 'myusername'
即使我完全确定它是真的,因为我已经复制了用户名并将其作为比较字符串放置,所以条件评估为假。
预期的结果是条件评估为真。
javascript - 如何使用花括号通过“shelljs”在单个命令中创建多个目录?
如果您在 Linux 终端中运行此命令:
它将创建以下文件夹树(在当前目录中):
当我尝试使用shelljs npm 包做同样的事情时,就会出现问题。
例如,调用以下函数:
结果创建了以下文件树:
换句话说,它是一个名为的文件夹dist
,其中包含一个名为{articles,scripts,stylesheets}
.
我试过转义花括号,如下所示:
它没有用,所以我加倍努力并逃脱了反斜杠:
那也不起作用,所以我再次加倍并在转义反斜杠之前添加了一个转义反斜杠:
这不起作用,但它确实创建了一个具有不同名称的文件夹:
我该如何解决这个问题?
angular - 错误消息:Shelljs 0.8.3 及之前版本容易受到命令注入的攻击
将我的项目更新到 Angular 8.0.3 后,我的 github 警报上出现此错误。
这是一个没有补救措施的漏洞。
没有可用的补丁版本。
有人有这方面的任何信息吗?
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
原样看不到文件路径的问题。该命令结构正确,但路径转移到新行。
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 模块的源代码中看不到该命令。
感谢您提供任何帮助,解释为什么它不起作用或任何解决方案或资源,谢谢。
reactjs - 无法让 npm 运行启动 testcafe 的脚本
我有一个反应项目。我正在尝试使用将使用 testcafe 运行测试的 npm 脚本。该测试使用yargs
和shelljs
。package.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:
node.js - 访问公牛队列以查看来自 nodejs 的作业统计信息
我需要访问公牛队列来查看工作统计并在页面上显示。我bull-repl
用来从 CLI 访问队列,如下所示:
我正在尝试使用以下代码从 JS 做同样的事情:
第一个 shell.exec 运行,正在启动bull-repl
,但需要在工具内运行的其余代码永远不会执行,我认为这是因为shelljs
独立运行每个命令。如何让最后两个命令在工具中运行?