Linux 如何把进程放到后台继续运行
Linux系统解压一般是用tar命令的哈,和Linux的许多命令一样,tar也有一个-v参数,但是执行tar命令时即使不用-v参数,解压的文件名依然会显示在屏幕上。如果不想让解压过程显示出来,就需要使用Linux的数据重定向功能,用英文>符号将标准输出数据重定向到/dev/null或者是一个文本文件中,如果重定向到/dev/null中表示丢弃输出的解压过程数据,而如果重定向到一个文本文件,以
Linux系统解压一般是用tar命令的哈,和Linux的许多命令一样,tar也有一个-v参数,但是执行tar命令时即使不用-v参数,解压的文件名依然会显示在屏幕上。如果不想让解压过程显示出来,就需要使用Linux的数据重定向功能,用英文>符号将标准输出数据重定向到/dev/null或者是一个文本文件中,如果重定向到/dev/null中表示丢弃输出的解压过程数据,而如果重定向到一个文本文件,以后可以来查看解压过程的数据。示例:
tar -zxv -f /home/user/123.tar.gz -C /tmp > /dev/null
亲测命令
tar -zcvf archive_name.tar.gz www.houdecn.com/ > /dev/null&
&代表切换后台
但是如果使用putty等工具需要在关闭putty的情况下,后台继续执行任务,需要加上以下代码
使用bg命令通过将暂停的指令作为后台作业运行
bg
jobs 命令显示了当前 shell 环境中已启动的作业状态。
jobs
通过disown命令就可以把后台作业(“%1”代表作业号)的进程从我们的会话中分离出来而交给系统,这样我们即使退出登录压缩指令也在继续执行,直到完成压缩。
disown -h %1
通过disown命令就可以把后台作业(“%1”代表作业号)的进程从我们的会话中分离出来而交给系统,这样我们即使退出登录压缩指令也在继续执行,直到完成压缩。
例如:
- 比如我们压缩一个很大的文件
[root@vpn tmp]# gzip hyjwt_ROOT_bak_20100910.tar
- 这时候画面会停止,直到压缩完成。按组合键“Ctrl + Z”暂停指令并退出运行状态,显示结果如下:
[root@vpn tmp]# gzip hyjwt_ROOT_bak_20100910.tar
- 使用bg命令通过将暂停的指令作为后台作业运行
[root@vpn tmp]# bg
[1]+ gzip hyjwt_ROOT_bak_20100910.tar &
说明:控制台打印的“[1]”代表作业的编号
- jobs 命令显示了当前 shell 环境中已启动的作业状态。
[root@vpn tmp]# jobs
[1] + Running gzip hyjwt_ROOT_bak_20100910.tar
说明:控制台打印出作业编号为1的作业已经处于运行状态,压缩指令又再次继续工作了。
- disown 命令将进程与shell分离
[root@vpn tmp]# disown -h %1
通过disown命令就可以把后台作业(“%1”代表作业号)的进程从我们的会话中分离出来而交给系统,这样我们即使退出登录压缩指令也在继续执行,直到完成压缩。
我们通过查看进程
[root@vpn ~]# ps -ef|grep gzip
oracle 2409 1 0 Jun22 ? 00:00:00 gzip hyjwt_ROOT_bak_20100910.tar
可以看出压缩指令的父进程号已经变成1。
更多推荐
所有评论(0)