正在加载中...

linux让程序后台运行或从后台到前台运行的方法

linux让程序后台运行或从后台到前台运行的方法

阿里云服务器管理员如果面对一个几十G的压缩包,需要解压缩或者是压缩,不可能老是开着终端,即便能一直开着,如果传到一半断一下电或者断一下网,也会导致前功尽弃,所以我们可以把运行程序放到后台运行。怎么实现让linux程序跑到后端运行呢,可以借助nohup命令:

@#:nohup 你的shell命令 & 例子:

nohup tar -zxvf /var/www/html.tar.gz &

这个命令会产生一个nohup的日志

 

例子2:就是你要查看在后台的工作有没有做完或者是调到前台运行:

 使用 jobs 查看任务。

 使用 fg %n 关闭。

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

5.fg 命令 

 

它的作用是把指定的后台作业移植到前台,其格式是: 

 

fg [job...] 

 

其中参数job是一个或多个进程的PID,或者是命令名称或是作业号(前面要带一个%号) 

 

$ jobs 

 

[2] + running tar tv3 * & 

 

[1] - running find/ -name README -print > logfile& 

 

$ fg %find 

 

find/-name README -print > logfile 

 

注意,显示的命令行末尾没有&符号.下面的命令能产生同样的效果: 

 

$ fg %1 

 

6. bg 命令 

 

它是把前台进程换到后台执行,其使用格式是: 

 

bg [job...] 

 

其中,job还是一个或多个进程的PID,命令名称或作业号,在参数前要带%号.例如,在cc(C编译命令)命令执行过程中,按 

 

Z键,使作业挂起.然后键入以下命令: 

 

$ bg %cc 

 

该挂起的作业在后台重新开始运行......... 

 

再补充几个UNIX进程管理命令. 

 

ps命令-主要是检查系统中当前存在的进程状态.要了解当前系统上活动的进程信息,最基本的操作是运行ps命令. 

 

当ps命令没有选项时,只显示与控制终端相关进程的基本信息.例如,在主控制tty01上键入ps: 

 

$ ps 

 

PID TTY TIME CMD 

 

595 tty01 00:00:00 sh 

 

607 tty01 00:00:00 ps 

 

其中PID--是进程的ID号 

 

TTY--终端标识符 

 

TIME--进程占用CPU的时间 

 

CMD--与进程对应的命令 

 

sleep命令是使进程暂停执行一段时间,其参数单位是秒.例如: 

 

$ sleep 60 

 

表示将等待60秒后,才重新回到$提示符状态. 

 

wait命令的功能是等待后台进程结束.其命令格式是: 

 

$ wait 后面跟参数 

 

kill命令是终止一个进程的运行.如果你是个超级用户下: 

 

$ kill 123 

 

就是停止PID为123的进程运行.如果想强行杀死某个进程(由PID指定),可以用以下形式: 

 

# kill -9 pid 

 

补充: 

at命令要ROOT权限。 

ps -ef列出所有正在进行的进程! 

ps -ef|grep xxx查找 进程中含有xxx的进程



返回上一页