一、Linux前后台切换的相关命令:
 
1、&  在命令的后面加上这个符合,让命令进程在后台运行 

例如:

#ping 127.0.0.1 &        // 此时命令ping 127.0.0.1的进程是在后台运行的

2、Ctrl + Z  使用这个组合键可以将一个正在前台执行的进程放到后台,并且暂停

例如:

#ping 127.0.0.1

按住Ctrl + Z组合键        // 此时ping 127.0.0.1进程被挂起到后台并暂停

3、jobs  查看当前有多少在后台运行的进程
    选项:-l  显示工作的PID

例如:

#ping 127.0.0.1

按住Ctrl + Z

#jobs -l

[1]+ 4403 停止 ping 127.0.0.1          // 1是工作号,"+"号代表最近一个放入后台的工作,也是工作恢复时默认的工作。

4、fg %n  让后台运行的进程n到前台来运行(n为工作号)
  将后台中的命令调至前台继续运行
  如果后台中有多个进程,可以用fg %n将指定的进程调到前台,%n是通过jobs命令查到的后台正在执行的命令的工作号。
    例如:
    #fg 1             // 将作业号为1的后台进程放到前台运行,"%"可省略
5、bg %n 让进程n到后台去运行
  将一个在后台暂停的命令,变成继续执行
  如果后台中有多个进程,可以用bg %n将指定的进程调到后台,%n是通过jobs命令查到的后台正在执行的命令的工作号。
    例如:

# jobs 
    [1]+ Stopped ping 127.0.0.1             // 有一个在后台被暂停的进程,其工作号为1

    #bg 1            // 将作业号为1的后台暂停进程放到后台运行,"%"可省略
 
 
 6、Ctrl + C   终止前台运行的进程任务,但是不能终止后台进程
 
 
 
二、实例:
 
假设你发现前台运行的一个程序需要很长的时间,但是需要干其他的事情,这时就可以将这个程序放到后台去运行:
 
1、我们用vi来写一个C程序(hello.c),这个程序的功能是每隔3秒输出一个数字:
 #include<stdio.h>
#include<unistd.h> int main()
{
int i=;
while(i<)
{
printf("%d\n",i++);
sleep();
}
return ;
}

2、编译:

# gcc -o hello hello.c

3、运行:

#./hello             // 运行后每隔3秒向屏幕终端输出一个数字

4、按住Ctrl + Z 把它放到后台并暂停

[1]+ Stopped ./hello         // 会出现这个提示

5、查看后台进程

# jobs
[1]+ Stopped ./hello           // 1是这个进程的工作号

6、让它在后台继续运行

# bg 1              // 让工作号为1的进程在后台运行

#jobs

[1]+ Running ./hello &        // 状态为变为Running,若此时按住Ctrl+C将无法终止该进程

 
7、把它切换到前台继续运行
#fg 1               // 放到前台后可以按住Ctrl+C来终止进程
 
 

Linux进程的前后台切换的更多相关文章

  1. 使程序在Linux下后台运行,程序运行前后台切换

    一.为什么要使程序在后台执行 我们计算的程序都是周期很长的,通常要几个小时甚至一个星期.我们用的环境是用putty远程连接到日本Linux服务器.所以使程序在后台跑有以下三个好处: 1:我们这边是否关 ...

  2. 【Linux】fg、bg让你的进程在前后台之间切换

    Linux下的fg和bg命令是进程的前后台调度命令,即将指定号码(非进程号)的命令进程放到前台或后台运行.比如一个需要长时间运行的命令,我们就希望把它放入后台,这样就不会阻塞当前的操作:而一些服务型的 ...

  3. 程序在Linux下前后台切换

    程序在Linux下前后台切换 一.为什么要使程序在后台执行 背景:SecureCRT远程连接到linux主机,使程序在后台运行有以下好处: (1)本机关机不影响linux主机运行 (2)不影响计算效率 ...

  4. Linux进程切换代码分析

    朱宇轲 + 原创作品转载请注明出处 + <Linux内核分析>MOOC课程http://mooc.study.163.com/course/USTC-1000029000 这次我们来分析L ...

  5. linux进程解析--进程切换

    为了控制进程的执行,linux内核必须有能力挂起正在cpu上运行的进程,换入想要切换的进程,也就是恢复以前某个挂起的进程,这就是linux的进程切换.  1进程切换的时机 一般来说,进程切换都是发生在 ...

  6. [Ubuntu] fg、bg让你的进程在前后台之间切换

    refer to  : http://man.linuxde.net/jobs Linux下的fg和bg命令是进程的前后台调度命令,即将指定号码(非进程号)的命令进程放到前台或后台运行.比如一个需要长 ...

  7. Linux进程管理及while循环

    目录 进程的相关概念 进程查看及管理工具的使用 Linux系统作业控制 调整进程优先级 网络客户端工具 bash之while循环 20.1.进程类型 守护进程 daemon,在系统引导过程中启动的进程 ...

  8. linux 进程管理相关内容

    简介 当我们运行程序时,Linux会为程序创建一个特殊的环境,该环境包含程序运行需要的所有资源,以保证程序能够独立运行,不受其他程序的干扰.这个特殊的环境就称为进程. 每个 Linux 命令都与系统中 ...

  9. Linux进程关闭和后台运行解析

    1.问题背景 Java是跨平台的,大部分程序也都是在Linux服务器上运行的.但是很多朋友其实对服务器了解并不多,对相关知识也是一知半解.很多概念可能知道,但是并不十分清楚,仅仅是基本运用.可能很多新 ...

随机推荐

  1. Java转json

    一.json介绍 1. 作用:JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式,是存储和交换文本信息的语法. 2.json以key-value的格式书写,数 ...

  2. excle心得及部分应用案例

    目前数据分析方面的知识还学的不多,以后会持续向一些大牛学习,不断的学会做笔记,这样既加深了理解,也能够和大家分享交流.今天就只是把一些excle中常用的知识点总结啦~作为我博客的第一篇吧,希望自己能够 ...

  3. XML文件数据操作

    #region XML序列化文件和反序列化 /// <summary> /// 通用类的保存函数,可以将已经声明过可序列化的类以文件方式保存起来. /// 保存格式分为 XML明文式和 二 ...

  4. hexo问题篇(偶尔抽抽疯)

    hexo安安稳稳的跑了很久,然后 ....让人心碎的hexo问题,华丽丽的摔倒在坑里,只因update了hexo version最是哪一句 hexo server让人欲哭无泪 -问题场景 设备: Ma ...

  5. 使用Monitor调试Unity3D Android程序日志输出(非DDMS和ADB)

    使用Monitor调试Unity3D Android程序日志输出(非DDMS和ADB) http://www.cnblogs.com/mrkelly/p/4015245.html 以往调试Androi ...

  6. Python验证Url地址的正则表达式

    如下是django中做url验证的正则表达式: regex = re.compile( r'^(?:http|ftp)s?://' # http:// or https:// r'(?:(?:[A-Z ...

  7. 使用MyEclipse生成Java注释时,使用的Code Template

    设置注释模板的入口: Window->Preference->Java->Code Style->Code Template, 然后展开Comments节点就是所有需设置注释的 ...

  8. 编写Delphi控件属性Stored和Default的理解及应用

    property ButtonSize: Integer read FButtonSize write SetButtonSize default 0;    property Color: TCol ...

  9. Tunna内网转发

    Tunna和reduh原理一样.. 使用方法: 上传源码包中文件夹webshell下的脚本至网站目录 然后本地进行连接上传的webshell即可 python proxy.py -u http://1 ...

  10. COGS 902 乐曲主题 题解 & hash入门贺

    [题意] 给定一个长为n的序列,元素都是不超过88的正整数,求序列中主题的最大长度. 所谓主题是指在序列中出现了至少两次并且不相交的子串.特别的,主题可以变调,也就是说如果一个子串全部加上或减去一个数 ...