我想自动化 ssh 登录。经过一些研究,似乎 tcl/expect 是要走的路线。
但是,我的问题是,当交互接管我的终端时,东西不能按预期工作(不是故意的)。
例如,如果我调整终端的大小,它不会“占用”。此外,有时交互没有响应,有时它只是无缘无故地挂起。我在下面包含了我的代码。我对代码的问题是,我错过了什么吗?
另外,有没有更好的方法来做到这一点(使用另一种脚本语言?)我需要终端非常敏感,这与我在控制台上手动输入 ssh 没有什么不同。
proc Login {username server password} {
set prompt "(%|>|\#|\\\$) $"
spawn /usr/bin/ssh $username@$server
expect {
-re "Are you sure you want to continue connecting (yes/no)?" {
exp_send "yes\r"
exp_continue
#continue to match statements within this expect {}
}
-nocase "password: " {
exp_send "$password\r"
interact
}
}
}
Run Code Online (Sandbox Code Playgroud) <?php
require_once("simple_html_dom.php");
$str = '<div class="content"><span>text1</span><span>text2</span><span>text3</span><span>text4</span><span>text5</span><span>text6</span><span>text7</span><span>text8</span><span>text9</span><span>text10</span><span>text11</span><span>text12</span><span>text13</span><span>text14</span><span>text15</span><span>text16</span></div>';
$dom = html_entity_decode($str);
$html = str_get_html($dom);
foreach($html->find('span') as $e)
echo $e . '<br>';
?>
Run Code Online (Sandbox Code Playgroud)
在此代码中,它可以回显一行中的每个跨度.但是我如何编写它以便3个结果将合并为一个foreach?
我需要一个结果:
text1 text2 text3 <br />
text4 text5 text6 <br />
text7 text8 text9 <br />
text10 text11 text12 <br />
text13 text14 text15 <br />
text16
Run Code Online (Sandbox Code Playgroud) 我想将 php 变量传递$aa给类函数。我读过php.net上的一些文章
,但还是不太明白。谁能帮我将变量放入这个类中?谢谢。
$aa='some word';
class Action {
private $_objXML;
private $_arrMessages = array();
public function __construct() {
$this->_objXML = simplexml_load_file($aa.'.xml');
}
}
Run Code Online (Sandbox Code Playgroud) 如何确定除以8的数字是否为整数?
例如:
32 % 8 = 4, it is an integer.
25 % 8 = 3.125, it is not an integer.
Run Code Online (Sandbox Code Playgroud)
我需要一个像以下工作代码:
if ($str % 8 == integer){
// continue working
}
Run Code Online (Sandbox Code Playgroud) 我创建一个表单,我想使用PHP删除所有HTML标记但排除一些标记(<b>, <strong>, <em>, <i>, <p>, <br>, <ul>, <li> <ol>...(以及格式段的一些标记)当成员单击提交时,它将插入到数据库中.
$content = $_POST['content'];
Run Code Online (Sandbox Code Playgroud)
谢谢大家的帮助.
如果我的英语不好,我很抱歉.
例如,我有这个小提琴.您可以清楚地看到我错过了内联样式的引号,但它确实显示正确.从我学到的任何地方,他们从未说过不允许使用引号.那么,是这样的:
<div style=background-color:red></div>This styling is weird
Run Code Online (Sandbox Code Playgroud)
div{ height:500px ; width:500px }
Run Code Online (Sandbox Code Playgroud)
谢谢.
我正在使用Node.js并制作聊天应用程序.
假设用户A正在与用户B聊天.在每个用户开始键入的所有聊天应用程序中,出现一个通知,其中显示"用户X正在键入...".
我有类似的"打字......"功能.使用这种方法:
$(document).on('keyup','form.chat input:text', function(e){
var $id = $(this).attr('id'); // text id is the user id we are chating with.
if ( $(this).val().trim().length > 0 )
socket.emit("writingOn", $id );
if ( $(this).val().trim().length === 0 )
socket.emit("writingOff", $id );
});
Run Code Online (Sandbox Code Playgroud)
它运作良好.但问题是:
这是一个好方法吗?因为foreach keyUp客户端向服务器发送req
提前致谢.
我将以下功能作为babel插件的示例。pre:该功能在做什么?我尝试了是否使用它,结果是一样的。
function warn (message) {
pre: typeof message === 'string';
return 'Warning!\n' + message;
}
Run Code Online (Sandbox Code Playgroud)
编辑:Babel插件
在Electron中,我有以下脚本是my main.js,它是还原窗口并对其进行聚焦的快捷方式,但是我想将输入聚焦在窗口内部。我该如何实现?
main.js
app.on('ready', function(){
createWindow();
var ret = globalShortcut.register('Command+Control+Alt+G', function() {
mainWindow.restore();
mainWindow.focus();
$('.js-search').focus();
});
})
Run Code Online (Sandbox Code Playgroud)