有没有人知道从linux控制台执行快速模糊搜索的方法?
当我需要在项目中找到文件但我不记得确切的文件名时,我常常遇到这种情况.在Sublime文本编辑器中,我将按Ctrl-P并键入名称的一部分,这将生成可供选择的文件列表.这是一个让我很满意的惊人功能.问题是在大多数情况下我必须通过ssh浏览远程机器上的控制台中的代码.所以我想知道是否有一个类似于Linux控制台的"Go Anywhere"功能的工具?
我正在使用可写流编写node.js的大文件:
var fs = require('fs');
var stream = fs.createWriteStream('someFile.txt', { flags : 'w' });
var lines;
while (lines = getLines()) {
for (var i = 0; i < lines.length; i++) {
stream.write( lines[i] );
}
}
Run Code Online (Sandbox Code Playgroud)
我想知道这个方案是否安全而不使用drain事件?如果不是(我认为是这种情况),将任意大数据写入文件的模式是什么?
我有一个node.js脚本,它使用WriteStream对文件进行一些日志记录.在某些事件上,我想停止执行脚本,即警告记录并在此之后立即退出.asyncronious node.js不允许我们直接这样做:
#!/usr/local/bin/node
var fs = require('fs');
var stream = fs.createWriteStream('delme.log', { flags: 'a' });
stream.write('Something bad happened\n');
process.exit(1);
Run Code Online (Sandbox Code Playgroud)
而不是将消息附加到delme.log,此脚本不会对该文件执行任何操作.处理'退出'事件和刷新不起作用.写了这么远exitting发现之前的最后一个日志消息的唯一途径是包装process.exit(1)在setTimeout():
#!/usr/local/bin/node
var fs = require('fs');
var stream = fs.createWriteStream('delme.log', { flags: 'a' });
stream.write('Something bad happened\n');
setTimeout(function(){
process.exit(1);
}, 30);
Run Code Online (Sandbox Code Playgroud)
但是在这种形式下,它不会立即停止脚本执行,并且在关键事件发生后脚本将运行一段时间.所以我想知道是否还有其他方法可以通过日志消息退出脚本?
在大多数Node.js库中,人们需要特别注意在最后一个key-property对象之后删除尾随逗号:
var test = {
key1: 123,
key2: 456,
key3: 789
};
Run Code Online (Sandbox Code Playgroud)
这会在编辑代码时产生一些麻烦,例如,交换最后两个键值对,也可以添加一个逗号并删除一个.有些人将逗号移到下一行,这解决了最后一个元素的问题,但也使代码更难阅读(恕我直言):
var test = {
key1: 123
, key2: 456
, key3: 789
};
Run Code Online (Sandbox Code Playgroud)
另一方面,据我所知,JavaScript中的尾随逗号仅在某些IE浏览器中产生麻烦.所以我想知道是否有任何技术原因不在Node.js中用尾随逗号写哈希?(如下:)
var test = {
key1: 123,
key2: 456,
key3: 789,
};
Run Code Online (Sandbox Code Playgroud) 我需要检查一些系统设置,例如ulimit -nLinux中的Scala脚本.如果我处理普通的命令,我会使用scala.sys.process像:
import scala.sys.process._
println("ls -lha".!!)
Run Code Online (Sandbox Code Playgroud)
不幸的是,这对shell内置函数不起作用.有没有办法从Scala中内置的shell中捕获输出?
更新:
我尝试了sh -c "ulimit -n"几种形式的通常技巧而没有运气; 以下所有命令均失败:
"sh -c 'ulimit -n'".!!
"sh -c \"ulimit -n\"".!!
"""sh -c "ulimit -n"""".!!
"""sh -c "ulimit -n """ + "\"".!!
Run Code Online (Sandbox Code Playgroud)
我在REPL中遇到运行时错误:
-n": 1: Syntax error: Unterminated quoted string
java.lang.RuntimeException: Nonzero exit value: 2
at scala.sys.package$.error(package.scala:27)
at scala.sys.process.ProcessBuilderImpl$AbstractBuilder.slurp(ProcessBuilderImpl.scala:131)
at scala.sys.process.ProcessBuilderImpl$AbstractBuilder.$bang$bang(ProcessBuilderImpl.scala:101)
at .<init>(<console>:11)
at .<clinit>(<console>)
at .<init>(<console>:11)
at .<clinit>(<console>)
at $print(<console>)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:57)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)
at java.lang.reflect.Method.invoke(Method.java:601)
at scala.tools.nsc.interpreter.IMain$ReadEvalPrint.call(IMain.scala:704)
at scala.tools.nsc.interpreter.IMain$Request$$anonfun$14.apply(IMain.scala:920) …Run Code Online (Sandbox Code Playgroud) 我想使用Cake Pattern将某些软件系统的各个部分拆分成组件,使其完全模块化,如本文所述.在最简单的情况下,我想要一些可模拟的组件,比如说Logging,Config,Database,Scripts等可能会互相使用.代码可能看起来像
trait AbstractConfig {
def config: AbstractConfigInterface
trait AbstractConfigInterface {
def test: Unit
}
}
trait SomeConfig extends AbstractConfig {
this: Core =>
def config = SomeConfigImplementation
object SomeConfigImplementation extends AbstractConfigInterface {
def test = println("conf.test method called")
}
}
trait AbstractDatabase {
def database: AbstractDatabaseInterface
trait AbstractDatabaseInterface {
def connect: Unit
}
}
trait SomeDatabase extends AbstractDatabase {
this: Core =>
def database = SomeDatabaseImplementation
object SomeDatabaseImplementation extends AbstractDatabaseInterface {
def connect = {
println("connect method …Run Code Online (Sandbox Code Playgroud) 我有一个分片和复制的MongoDB,有数十亿条记录.我知道Mongo用一些填充因子写数据,以允许快速更新,我也知道要复制数据库Mongo应该存储操作日志,这需要一些(实际上,很多)空间.即使有这些知识,我也不知道如何根据典型数据库记录的大小来估计Mongo所需的实际大小.到目前为止,每周维修之间的差异为2 - 3.
所以问题是:如何根据平均记录大小(以字节为单位)估算MongoDB所需的总存储大小?
node.js ×5
scala ×3
linux ×2
actor ×1
akka ×1
amazon-s3 ×1
bash ×1
cake-pattern ×1
control-flow ×1
file-search ×1
javascript ×1
large-files ×1
mongodb ×1
shell ×1