背景:今天在安装hudson时,每次启动时都必须在linux终端(SecureCRT)执行:

java -jar hudson.war --httpPort=18080 --jp13Port=18009

但是执行之后,终端必须一直开着,只要终端一断开,hudson就会中断,心里一思量,Linux应该也有类似windows的服务,可以让其在后台自己运行,故搜索一翻,找到了答案:

http://www.muliba.net/archives/453

使用nohup,这就来找一找到底nohup是用来干嘛的?

紧接着,在网上一顿搜索:

百度文库:http://wenku.baidu.com/link?url=YiRbUMzzDhcEgejL4myRVfUX7Yiqm5JCgyv9tndsUBld9BEq5Ju7kjdVksje0_9XGb_Ib594mwCO0pcOilh-J33LHWGd2ejb7MJsJz2unKW

nohup: 用于不挂断执行程序,这有点类似于新启动一个进程,这才明白了,为什么以前老是使用nohup当做启动一个程序的前缀,在此来细细看看此命令的详解:

语法:nohup Command [ Arg ... ] [ & ]   

描述:nohup 命令运行由 Command 参数和任何相关的 Arg 参数指定的命令,忽略所有挂断(SIGHUP)信号。在注销后使用 nohup 命令运行后台中的程序。要运行后台中的 nohup 命令,添加 & ( 表示“and”的符号)到命令的尾部。

上面的启动hudson的命令可以改成:nohup java -jar hudson.war --httpPort=18080 --jp13Port=18009 &,在终端执行即可让其在后台执行

备注:无论是否将 nohup 命令的输出重定向到终端,输出都将附加到当前目录的 nohup.out 文件中。如果当前目录的 nohup.out 文件不可写,输出重定向到 $HOME/nohup.out 文件中。如果没有文件能创建或打开以用于追加,那么 Command 参数指定的命令不可调用。如果标准错误是一个终端,那么把指定的命令写给标准错误的所有输出作为标准输出重定向到相同的文件描述符。

更多:如果你正在运行一个进程,而且你觉得在退出帐户时该进程还不会结束,那么可以使用nohup命令。该命令可以在你退出帐户/关闭终端之后继续运行相应的进程。nohup就是不挂起的意思( n ohang up)。

将日志输出至指定的日志文件里,更新以上命令至:nohup java -jar hudson.war --httpPort=18080 --jp13Port=18009 > hudson.log &

配合使用fg, bg,将后台、前台进行唤起;

另外一个常用的命令:kill -9 pid

参考资料:http://blog.sina.com.cn/s/blog_975a2a540100ywyx.html,从这个参考资料里学习到了“|”是linux里的管道符:ps -ef | grep java,这个使用是先将ps -ef查找到的内容(所有进程信息)通过管道发送给后面的命令,所有进行信息给到grep java之后,grep java会去找所有进程里包含java关键字的进程并显示出来。ps -ef和ps -aux一样,使用ps -aux | grep java进行尝试。

ps -ef和ps aux有什么区别呢:ps aux 是以BSD方式显示,ps -ef 是以System V方式显示,该种方式比BSD方式显示的多一重要项

ps -ef:UID        PID  PPID  C STIME TTY          TIME CMD

ps aux:USER       PID %CPU %MEM   VSZ  RSS TTY      STAT START   TIME COMMAND

大部分进行解释

UID 用户ID
PID 进程ID
PPID 父进程ID
C CPU占用率
STIME 开始时间
TTY 开始此进程的TTY,终端号
TIME 此进程运行的总时间
CMD 命令名

接下来看看grep命令的使用:

grep全称是Global Regular Expression Print,参考资料:http://www.cnblogs.com/end/archive/2012/02/21/2360965.html

nohup之no hang up, kill, ps -ef, ps aux, grep的更多相关文章

  1. ps -ef 和 aux 区别

    Linux中的ps命令是Process Status的缩写.ps命令用来列出系统中当前运行的那些进程.ps命令列出的是当前那些进程的快照,就是执行ps命令的那个时刻的那些进程,如果想要动态的显示进程信 ...

  2. ps -ef/ps -aux 查看正在活动的进程

    ps -ef 查看正在活动的进程 ps -ef |grep abc 查看含有"abc"的活动进程 ps -ef |grep -v abc 查看不含abc的活动进程 1)ps a 显 ...

  3. 每天一个liunx命令4之 ps -ef ,ps -aux ,ps aux

    1ps aux和ps –aux 请注意"ps -aux"不同于"ps aux".POSIX和UNIX的标准要求"ps -aux"打印用户名为 ...

  4. ps -ef |grep xxx 输出的具体含义

    ps:将某个进程显示出来 -A 显示所有程序. -e 此参数的效果和指定"A"参数相同. -f 显示UID,PPIP,C与STIME栏位. grep命令是查找 中间的|是管道命令 ...

  5. Linux学习笔记:ps -ef、ps aux、kill -9

    一.查看进程命令 1.ps命令 Linux中的ps命令是Process Status的缩写. ps命令用来列出系统中当前运行的那些进程. ps命令列出的是当前那些进程的快照,就是执行ps命令的那个时刻 ...

  6. ps -ef|grep详解 、kill与kill -9的区别

    ps -ef|grep详解 ps命令将某个进程显示出来 grep命令是查找 中间的|是管道命令 是指ps命令与grep同时执行 PS是LINUX下最常用的也是非常强大的进程查看命令 grep命令是查找 ...

  7. 通过进程名称删除进程 ps -ef

    删除进程名为udpserver的进程. kill -9 $(ps -ef|grep udpserver | grep java|awk '{print $2}' ). 1.通过进程名取得进程号: ps ...

  8. ps aux 和ps -aux和 ps -ef的选择

    转载自:足至迹留 Linux中的ps命令是Process Status的缩写.ps命令用来列出系统中当前运行的那些进程.ps命令列出的是当前那些进程的快照,就是执行ps命令的那个时刻的那些进程,如果想 ...

  9. ps -ef | grep

    ps -ef | grep java   查看所有关于java的进程 root     17540     1  0  2009 ?        01:42:27 /usr/java/jdk1.5. ...

随机推荐

  1. 不起眼却有大作用的 .NET功能集(转发)

    http://www.cnblogs.com/powertoolsteam/p/top15features.html 目录 1. ObsoleteAttribute2. 设置默认值属性: Defaul ...

  2. linux命令别名的使用

    语 法:alias[别名]=[指令名称] 1,查看该用户下的别名: alias 2,有的系统里没有ll这个命令,原因就是没有定义ll='ls -l --color=tty'这个别名 如果想永久生效,就 ...

  3. 类型安全且自动管理内存的返回 std::string 的 sprintf 实现

    在这篇博文里,我提到了一个例子,说的是使用C++实现类型安全的printf.这个例子很惊艳,但是在我写程序的时候,并非那么"迫切"地需要它出现在我的工具箱中,因为它并不比普通的pr ...

  4. CSS3 Media Queries模板

    使用max-width @media screen and (max-width: 600px) { //你的样式放在这里.... } 使用min-width @media screen and (m ...

  5. angular问题总结与反思

    因为工作中实际开发需要,才开始接触angular框架.从当初的比葫芦画瓢,被各种问题.概念折磨摧残,到现在有一定的了解认识,觉得有必要将自己的认识进行简单的总结.不到位的地方还望多多包涵. 1.双向数 ...

  6. 抓包工具 wireshark

    http://fangxin.blog.51cto.com/1125131/735178

  7. Cocos2d-x 3.0修改Android平台帧率fps - 解决游戏运行手机发热发烫问题

    使用Cocos2d-x 3.0开发游戏之后,发现游戏在android手机上发热非常严重,在魅族2上,几乎担心手机会爆炸了~~~采取的一个措施就是降低帧率,因为游戏对于帧率要求不是非常高. 做过coco ...

  8. dex和odex相互转换

    一.dex和odex dex是安卓dalvik虚拟机的可执行文件,可以在导出的apk文件里用解压缩软件直接打开.odex是经过优化过的dex.odex一种是从apk程序中提取出来的,与apk文件存放在 ...

  9. nginx(五)nginx与php的安装配置

    经过前面学习,对nginx有个大概的了解,来配置LNMP;只要是在系统安装过程中选择安装比较齐全的包,基本上系统都能满足安装要求,下面是我一个一个测试的,基本上全部安装所需的库文件,放心安装: [ro ...

  10. c++ builder xe2 (Embarcadero rad studio) 远程调试 同样适用于 delphi 远程调试 教程

    转载:http://www.cnblogs.com/zhangdongsheng/p/3411056.html 每次要远程调试的时候都要看半天的xe2英文帮助文档,今天正好有点时间,把它写下来. 一. ...