是这样的,我需要这个命令的返回,show 这个方法应该是这样的:
我这么说的原因是,当一个进程在后台运行,启动它的会话已经关闭时,那么它的标准 IO 所指向的文件 v 节点已经关闭,当进程试图向标准 IO 写入数据时,它会得到一个 IO 异常,如果程序没有处理该异常,那么进程就会异常终止。nohup 虽然重定向了进程的标准 IO,但是这个是有条件的:只有当标准 IO 指向的是一个 tty 时,它才会这么做,有一个很常见的反例:
for host in ...; do
ssh -o StrictHostKeyChecking username@$host 'nohup cmd &'
done
通过上述命令批量在远程机器上启动后台程序,此时标准 IO 指向的不是 tty,而是一个 socket,nohup 不会重定向 cmd 的标准 IO,上面的脚本实际上很可能就卡在第一次循环就停住了。
再者有的人其实不理解 shell 是如何解析一个输入行的,当你敲下 nohup cmd1 | cmd2 & 这样的命令的时候,它运行的结果可能和你期望的是不一样的
如果只是暂时将进程放到后台,可以用 & 或 bg 等 shell 的作业控制命令即可,如果是一个需要长期在后台 run 的守护进程,建议程序遵循 daemon 编程规则,最要不要用 nohup,用不好会碰到各种问题
设下 LD_LIBRARY_PATH 环境?
这个和 Ruby 无关,转义也行,引号引起来也行
Ctrl-a Alt-f Ctrl-h
终端吗,konsole/gnome-terminal 不比 putty、xshell 神马的好用吗
不管是在 cookie 里存储完成的 session 信息还是只存 session_id 都有这个问题。解决方法,要么就是每次操作都加验证码(这个就有点恶了),要么就是限制单位时间内的操作次数
(cmd1 && cmd2) &
命令行的 diff、vimdiff 图形界面的 meld(Linux)、p4merge(Mac)
好多程序都是用的这种界面布局,Mac 应该没现成这样的 UI 控件吧,这是用的什么框架?
man 3 readline
不过首先要在 Apple Terminal 的设置面板里将“使用 option 键作为 meta 键”勾上
evernote 我只用来收藏网页剪辑,做笔记写文章我用 Emacs 的 org-mode,表达能力比 markdown/textile 神马的强一些
safari 和 firefox 老内存泄露