语法:

echo '' > 目标文件

cat /dev/null > 目标文件

 

nohup命令详解

2012.01.12

使用nohup让程序永远后台运行

Unix/Linux下一般比如想让某个程序在后台运行,很多都是使用 & 在程序结尾来让程序自动运行。比如我们要运行mysql在后台:

/usr/local/mysql/bin/mysqld_safe --user=mysql &

但是加入我们很多程序并不象mysqld一样做成守护进程,可能我们的程序只是普通程序而已,一般这种程序使用 & 结尾,但是如果终端关闭,那么程序也会被关闭。但是为了能够后台运行,那么我们就可以使用nohup这个命令,比如我们有个test.php需要在后台运行,并且希望在后台能够定期运行,那么就使用nohup:

nohup /root/test.php &

  提示:

  [~]$ appending output to nohup.out

  嗯,证明运行成功,同时把程序运行的输出信息放到当前目录的 nohup.out 文件中去。

  附:nohup命令参考

nohup 命令

  用途:不挂断地运行命令。

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

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

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

  退出状态:该命令返回下列出口值:

  126 可以查找但不能调用 Command 参数指定的命令。

  127 nohup 命令发生错误或不能查找由 Command 参数指定的命令。

  否则,nohup 命令的退出状态是 Command 参数指定命令的退出状态。

nohup命令及其输出文件

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

该命令的一般形式为:nohup command &

使用nohup命令提交作业

如果使用nohup命令提交作业,那么在缺省情况下该作业的所有输出都被重定向到一个名为nohup.out的文件中,除非另外指定了输出文件:

nohup command > myout.file 2>&1 &

在上面的例子中,输出被重定向到myout.file文件中。

使用 jobs 查看任务。

使用 fg %n 关闭。

另外有两个常用的ftp工具ncftpget和ncftpput,可以实现后台的ftp上传和下载,这样我就可以利用这些命令在后台上传和下载文件了。

原文地址: http://www.21andy.com/blog/20071121/677.html

 
参考:
https://rvm.beginrescueend.com/rvm/install/
http://ruby-china.org/wiki/install_ruby_guide
http://blog.ninjahideout.com/posts/a-guide-to-a-nginx-passenger-and-rvm-server
以前步骤我都是在root下进行
安装开发包
$ apt-get install wget vim build-essential openssl libreadline6 libreadline6-dev curl git-core zlib1g zlib1g-dev libssl-dev libyaml-dev libxml2-dev libxslt-dev autoconf automake libtool imagemagick libpcre3-dev
安装RVM
$ bash < <(curl -s https://raw.github.com/wayneeseguin/rvm/master/binscripts/rvm-installer)
RVM会安装到 /usr/local/rvm/ 下
vim .bashrc

#[ -z "$PS1" ] && return 
if [[ -n "$PS1" ]]; then
#add
. /usr/local/rvm/scripts/rvm

source .bashrc

$ rvm -v
rvm 1.9.2 by Wayne E. Seguin (wayneeseguin@gmail.com) [https://rvm.beginrescueend.com/]

用 RVM 安装 Ruby 环境
$ rvm pkg install readline
$ rvm install 1.9.3 --with-readline-dir=$rvm_path/usr
$ rvm 1.9.3 --default
$ ruby -v
ruby 1.9.3p0 (2011-10-30 revision 33570) [x86_64-linux]
$ gem -v
1.8.10

安装 Rails
$ gem install rails
bundler好像默认就有了

安装 passenger
gem install passenger

安装 nginx
rvmsudo passenger-install-nginx-module
这个步骤需要一些required softwares,可以按照提示完成
测试nginx
$ nginx -v
nginx: nginx version: nginx/1.0.6
检查nginx.conf
http {
    # load passenger
    passenger_root /usr/local/rvm/gems/ruby-1.9.3-p0/gems/passenger-3.0.9;
    passenger_ruby /usr/local/rvm/wrappers/ruby-1.9.3-p0/ruby;  

启动 Nginx
$ nginx

 

查看Ubuntu版本

2011.11.18
user@vps:~$ cat /etc/issue
Ubuntu 9.10 \n \l

user@vps:~$ sudo lsb_release -a
[sudo] password for user: 
No LSB modules are available.
Distributor ID:	Ubuntu
Description:	Ubuntu 9.10
Release:	9.10
Codename:	karmic
 

Ubuntu ssh

2011.06.27
安装:sudo apt-get install openssh-server
开启:/etc/init.d/ssh start
确认sshserver启动:ps -e |grep ssh
配置:/etc/ssh/sshd_config
重启:/etc/init.d/ssh resar
连接:ssh root@192.168.1.1
 

Home Blog Delicious Github Flickr About Contact

© Miclle.Zheng . Powered by Forest Chalet