对于那些想要回复我应该使用SSH密钥的人请弃权
我正在尝试在bash脚本中使用expect来提供SSH密码.提供密码是有效的,但我不会像我应该的那样在SSH会话中结束,它会回到海峡.
我的剧本:
#!/bin/bash
read -s PWD
/usr/bin/expect <<EOD
spawn ssh -oStrictHostKeyChecking=no -oCheckHostIP=no usr@$myhost.example.com'
expect "password"
send "$PWD\n"
EOD
echo "you're out"
Run Code Online (Sandbox Code Playgroud)
我脚本的输出:
spawn ssh -oStrictHostKeyChecking=no -oCheckHostIP=no usr@$myhost.example.com
usr@$myhost.example.com's password: you're out
Run Code Online (Sandbox Code Playgroud)
我想拥有我的SSH会话,只有当我退出它才能返回我的bash脚本.我之前使用bash的原因是因为我使用了一个菜单,我可以选择连接哪个单元.
谢谢
有没有一种简单的方法来重置流星部署的应用程序中的数据?
因此,例如,如果我部署了一个名为的应用程序test.meteor.com
- 我怎样才能轻松重置该应用程序收集的数据?
当地我跑meteor reset
,但我不确定在生产中做什么.
以下是代码段.
@Intercepts({@Signature(
type= Executor.class,
method = "update",
args = {MappedStatement.class,Object.class})})
public class
Run Code Online (Sandbox Code Playgroud)
有人可以向我解释一下@ sign在Java中的含义吗?
我正在使用官方的elasticsearch Docker镜像,而不是设置我自己的弹性搜索实例.这很有效,直到我想扩展它.我想在该ElasticSearch实例中安装奇迹以获取更多信息.
现在,dockerfile/elasticsearch会自动运行ElasticSearch并将命令设置为/bin/bash
不起作用,也不会附加到容器或尝试通过SSH访问它,也不会安装ssh-daemon apt-get install -y openssh-server
.
在这种特殊情况下,我可以进入容器的文件系统并执行opt/elasticsearch/bint/plugin -i elasticsearch/marvel/latest
,一切正常.
但是,apt-get
如果我无法在正在运行的容器中安装终端,我怎么能安装需要安装的附加服务?
我们正在使用CoffeeScript编写的特定jQuery 插件,我希望我可以将项目转换为一些看起来很正常的JavaScript.该库看起来结构非常好(良好的OOP实践),但我真的很喜欢它,如果我可以探索它的源代码而不必学习CoffeeScript所需的所有技巧.
我读过的所有ExtJS文档和示例都建议调用这样的超类方法:
MyApp.MyPanel = Ext.extend(Ext.Panel, {
initComponent: function() {
// do something MyPanel specific here...
MyApp.MyPanel.superclass.initComponent.call(this);
}
});
Run Code Online (Sandbox Code Playgroud)
我已经使用这种模式很长一段时间了,主要的问题是,当你重命名你的类时,你还必须改变所有对超类方法的调用.这很不方便,经常我会忘记,然后我必须追查奇怪的错误.
但是看完来源Ext.extend()
,我发现,这不是我可以使用superclass()
或super()
该方法Ext.extend()
增加了原形:
MyApp.MyPanel = Ext.extend(Ext.Panel, {
initComponent: function() {
// do something MyPanel specific here...
this.superclass().initComponent.call(this);
}
});
Run Code Online (Sandbox Code Playgroud)
在这个代码中,将MyPanel重命名为其他东西很简单 - 我只需更改一行.
但我怀疑......
我没有在任何地方看到过这种情况,旧的智慧说,我不应该依赖于无证件的行为.
我没有在ExtJS源代码中找到这些superclass()
和supr()
方法的单独使用.为什么在你不打算使用它们时创建它们?
也许这些方法在某些旧版本的ExtJS中使用但现在已被弃用?但它似乎是一个非常有用的功能,你为什么要弃用呢?
那么,我应该使用这些方法吗?
哪个是批量插入Oracle数据库的更好选择?一个FOR Cursor循环就像
DECLARE
CURSOR C1 IS SELECT * FROM FOO;
BEGIN
FOR C1_REC IN C1 LOOP
INSERT INTO BAR(A,
B,
C)
VALUES(C1.A,
C1.B,
C1.C);
END LOOP;
END
Run Code Online (Sandbox Code Playgroud)
或简单的选择,如:
INSERT INTO BAR(A,
B,
C)
(SELECT A,
B,
C
FROM FOO);
Run Code Online (Sandbox Code Playgroud)
任何一个特定原因要么更好?
我一直在编写自己的Javascript编辑器,其功能类似于Google Docs(允许多人同时处理它).有一点我不明白:
假设您已将用户A和用户B直接相互连接,网络延迟为10毫秒.我假设编辑器使用diff系统(据我理解Docs),其中编辑表示为"在索引3处插入'文本',并且差异被加时间戳并强制按时间顺序应用于所有客户端.
让我们从包含文本的文档开始:"xyz123"
用户A在时间戳001ms处在文档的开头键入"abc",而用户B在时间戳005ms处在"xyz"和"123"之间键入"hello".
两个用户都希望结果是:"abcxyzhello123",但考虑到网络延迟:
当然," abchello xyz123"与" abc xyz hello 123"不一样
除了字面上为每个角色分配自己的唯一ID之外,我无法想象Google将如何有效地解决这个问题.
我想到的一些可能性:
我正在阅读http://www.waveprotocol.org/whitepapers/operational-transform,但很想听到解决这个问题的所有方法.
algorithm editing google-docs collaborative-editing operational-transform
ExtJS提供了一个花哨的组合框,它具有许多功能 - 提前输入,允许随机输入文本,隐藏下拉列表中所有未加入已输入文本的条目.
我不想要这些功能.我想要一个选择框,其行为几乎与人们期望普通选择框在vanilla html中完全相同.
我确实希望它绑定到数据存储,我确实想要组合框附带的所有其他extjs配置好东西.我只是不希望用户/测试人员遇到一个选择框时会吓坏他们,这些选择框打破了他们现有的这些工作方式的心理范式.
那么如何才能让extjs组合框更像选择框呢?或者我是否完全使用了错误的小部件?
extjs ×2
extjs3 ×2
javascript ×2
algorithm ×1
annotations ×1
bash ×1
coffeescript ×1
content-type ×1
docker ×1
editing ×1
expect ×1
extend ×1
google-docs ×1
http ×1
java ×1
json ×1
linux ×1
meteor ×1
mime-types ×1
mongodb ×1
node.js ×1
npm ×1
oop ×1
oracle ×1
plsql ×1
sql ×1
ssh ×1
superclass ×1
web ×1