小编dre*_*ves的帖子

网络中断后自动(或更轻松地)重新连接到屏幕会话

补充:我相信这个问题现在归入了这个问题: 完全透明地自动使用GNU Screen

另请参阅此相关问题:https:
//superuser.com/questions/147873/ssh-sessions-in-xterms-freeze-for-many-minutes-whenever-they-disconnect

原始问题:

如果有一种方法可以ssh到一台机器并立即重新连接到特定的屏幕会话,那将是很好的.你可以这样做:

laptop> ssh server.com screen -ls
Run Code Online (Sandbox Code Playgroud)

它将显示server.com上可用的屏幕列表,如[1]:

123.pts-1
456.pts-2
Run Code Online (Sandbox Code Playgroud)

然后你可能会尝试这样做:

laptop> ssh server.com screen -dr pts-2
Run Code Online (Sandbox Code Playgroud)

但那失败了,说"必须连接到终端".你必须首先ssh然后在server.com上执行"screen -dr pts-2",如果你有一个片状连接并断开很多连接,这是不好的.您希望能够通过笔记本电脑上的简单"向上箭头输入"继续.(或者让它更自动化.)

我对这个问题有一个可怕的解决方案,我将其作为答案发布,希望它能够被遗忘以支持正确的方法来解决这个问题.


脚注:

[1]或者,更好的是,如果您使用" screen -S foo"和" screen -S bar" 等名称创建了屏幕会话,那么您将获得更友好的列表,如:

123.foo
456.bar
Run Code Online (Sandbox Code Playgroud)

并且可以重新连接,例如" screen -dr foo".


迷你屏幕教程,结合这个问题的答案:

登录到server.com并执行操作

screen -S foo 
Run Code Online (Sandbox Code Playgroud)

然后再也不会退出该会话.要从其他地方重新连接,请执行此操作

ssh -t server.com screen -dr foo
Run Code Online (Sandbox Code Playgroud)

列出要重新协调的可用屏幕:

screen -ls
Run Code Online (Sandbox Code Playgroud)

或者,当然,

ssh server.com screen -ls
Run Code Online (Sandbox Code Playgroud)

远程检查server.com的可用屏幕.

我现在使用以下别名(tcsh),基于Jason的答案,连接到命名屏幕(如果存在)或创建并连接:

alias ssc 'ssh -t \!:1 "screen -S \!:2 -dr || screen -S …
Run Code Online (Sandbox Code Playgroud)

ssh scripting automation gnu-screen

55
推荐指数
1
解决办法
3万
查看次数

命令行命令在一定时间后自动终止命令

我想在一段时间后自动杀死一个命令.我记得这样的界面:

% constrain 300 ./foo args
Run Code Online (Sandbox Code Playgroud)

哪个会用"args"运行"./foo"但如果它在5分钟后仍在运行则会自动终止它.

将该想法概括为其他约束可能是有用的,例如如果它使用过多内存则自动填充进程.

是否有任何现有的工具可以做到这一点,或者有人写过这样的东西?

补充:Jonathan的解决方案正是我的想法,它在linux上的功能就像一个魅力,但我不能让它在Mac OSX上运行.我摆脱了SIGRTMIN,它让它编译得很好,但信号不会被发送到子进程.有人知道如何在Mac上完成这项工作吗?

[补充:请注意,Jonathan可以在Mac和其他地方使用更新.]

unix macos command-line utilities cpu-usage

52
推荐指数
5
解决办法
3万
查看次数

如何指定您的网页语言,以便Google Chrome不提供翻译

我有一个谷歌Chrome坚持认为是法语的页面.这是它的快照:

http://yootles.com/outbox/overcleverchrome.html

请注意,我包含一个meta http-equiv标签,告诉它实际上是英文的:

<meta http-equiv="Content-language" content="en">
Run Code Online (Sandbox Code Playgroud)

但它没有帮助.还有什么我可以做的来防止这种情况吗?

browser translation google-chrome cross-browser internationalization

50
推荐指数
4
解决办法
3万
查看次数

LaTeX有时会在一段时间后放置太多或太少的空间

LaTeX试图猜测句点是否结束一个句子,在这种情况下它会在它之后放置额外的空格.以下是猜测错误的两个例子:

I watched Superman III. Then I went home. 
Run Code Online (Sandbox Code Playgroud)

("超人III"之后的空间太小.)

After brushing teeth etc. I went to bed.
Run Code Online (Sandbox Code Playgroud)

("等"之后的空间太大.)

请注意,由于LaTeX忽略了这一点,因此在LaTeX源中使用了多少空白并不重要.

latex

49
推荐指数
3
解决办法
3万
查看次数

在Perl中将文件粘贴到字符串中的最佳方法是什么?

是的,有多种方法可以做,但必须有规范或最有效或最简洁的方式.我会添加我知道的答案,看看有什么渗透到顶部.

要清楚,问题是如何最好地将文件的内容读入字符串.每个答案一个解决方案

string perl file-io file

48
推荐指数
11
解决办法
3万
查看次数

如何在Perl中将日期/时间转换为纪元时间(自1970年以来的unix时间/秒)?

给定一个日期/时间的(年,月,日,时,分,秒)的数组,你会如何将其转换为划时代的时间,即自1970-01-01 00:00:00 GMT的秒数?

额外问题:如果将日期/时间作为字符串给出,您将如何首先将其解析为(y,m,d,h,m,s)数组?

perl time datetime parsing date

44
推荐指数
6
解决办法
12万
查看次数

解包参数:只有命名参数可以跟*表达式

以下在Python中运行得非常好:

def f(x,y,z): return [x,y,z]

a=[1,2]

f(3,*a)
Run Code Online (Sandbox Code Playgroud)

a获取解压缩的元素,就好像你已经调用它f(3,1,2)并返回它一样[3,1,2].精彩!

但我不能解开的元素a第一个两个参数:

f(*a,3)
Run Code Online (Sandbox Code Playgroud)

f(1,2,3)我没有调用那样,而是"SyntaxError:只有命名参数才能跟*表达式".

我只是想知道为什么它必须是这样的,如果有任何聪明的技巧我可能不会意识到将数组解压缩到参数列表的任意部分而不诉诸临时变量.

python arrays arguments

44
推荐指数
3
解决办法
2万
查看次数

如何计算位串的近似熵?

有没有标准的方法来做到这一点?

谷歌搜索 - "近似熵"位 - 揭示多篇学术论文,但我想找到一个伪代码块来定义任意长度的给定位串的近似熵.

(如果这说起来容易做起,而且取决于应用程序,我的应用程序涉及16,320位加密数据(密文).但加密为难题而不是无法破解.我以为我先检查一下熵,但不能轻易找到这样的好定义.所以这似乎是一个应该在StackOverflow上的问题!关于从哪里开始去除16k随机看似位的想法也是受欢迎的......)

另请参阅此相关问题:
熵的计算机科学定义是什么?

encryption entropy data-compression information-theory

42
推荐指数
6
解决办法
3万
查看次数

在网页上动态显示CSV文件作为HTML表格

我想将CSV文件放在服务器端,并将其作为html表动态显示.例如,这个:

Name, Age, Sex
"Cantor, Georg", 163, M
Run Code Online (Sandbox Code Playgroud)

应该成为这样的:

<html><body><table>
<tr> <td>Name</td> <td>Age</td> <td>Sex</td> </tr>
<tr> <td>Cantor, Georg</td> <td>163</td> <td>M</td> </td>
</table></body></html>
Run Code Online (Sandbox Code Playgroud)

欢迎任何语言的解决方案.

html php csv

30
推荐指数
3
解决办法
14万
查看次数

Mathematica:Unevaluated vs Defer vs Hold vs HoldForm vs HoldAllComplete vs etc等

我被搞糊涂了所有内置在声称为防止评价在某种程度上数学函数:Unevaluated,Defer,Hold,以及超过一半的形式的打Hold*.Mathematica文档只是单独解释了每个函数,但没有解释为什么要选择其中一个函数.任何人都可以对所有这些功能提供一致的解释吗?整件事对我来说似乎是一个令人费解的混乱.将它全部与Lisp宏相关可能是一个很好的起点.

大多数Mathematica语言都设计得非常好,但看起来Wolfram真的把自己描绘成了这方面的一个角落.或者我可能会遗漏一些东西.

lisp macros wolfram-mathematica language-design

29
推荐指数
1
解决办法
1999
查看次数