0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

Linux实现前后台切换的命令

电子设计 来源:工程师曾玲 2019-10-03 13:14 次阅读

Shell支持作用控制,有以下命令实现前后台切换:

1. command& 让进程在后台运行

2. jobs 查看后台运行的进程

3. fg %n 让后台运行的进程n到前台来

4. bg %n 让进程n到后台去

5. kill %n 杀死job

PS:"n"为jobs命令查看到的job编号,不是进程编号.

fg、bg、jobs、&、ctrl + z都是跟系统任务有关的,虽然现在基本上不怎么需要用到这些命令,但学会了也是很实用的.

一、& 最经常被用到
这个用在一个命令的最后,可以把这个命令放到后台执行

二、ctrl + z
可以将一个正在前台执行的命令放到后台,并且暂停

三、jobs
查看当前有多少在后台运行的命令

四、fg
将后台中的命令调至前台继续运行
如果后台中有多个命令,可以用 fg %jobnumber将选中的命令调出,%jobnumber是通过jobs命令查到的后台正在执行的命令的序号(不是pid)。

五、bg
将一个在后台暂停的命令,变成继续执行
如果后台中有多个命令,可以用bg %jobnumber将选中的命令调出,%jobnumber是通过jobs命令查到的后台正在执行的命令的序号(不是pid)。

实例:
假设你发现前台运行的一个程序需要很长的时间,但是需要干其他的事情,你就可以用 Ctrl-Z ,终止这个程序,然后可以看到系统提示:

[1]+ Stopped /root/bin/rsync.sh

如果没有此提示,则用 jobs 命令查看任务:

#jobs
[1]+ suspended /root/bin/rsync.sh &

然后我们可以把程序调度到后台执行:(bg 后面的数字为作业号)

#bg 1
[1]+ /root/bin/rsync.sh &

用 jobs 命令查看正在运行的任务:

#jobs
[1]+ Running /root/bin/rsync.sh &

如果想把它调回到前台运行,可以用

#fg 1
/root/bin/rsync.sh

这样,你在控制台上就只能等待这个任务完成了。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • Linux
    +关注

    关注

    87

    文章

    10994

    浏览量

    206772
  • Shell
    +关注

    关注

    1

    文章

    358

    浏览量

    22905
收藏 人收藏

    评论

    相关推荐

    Linux find命令的用法

    可以很肯定地说,find 命令Linux 后台开发人员必须熟知的操作之一,除非您使用的是 Windows Server。
    发表于 10-12 11:27 450次阅读

    前后台系统的优缺点

    的slave 控制器。在操作系统上来模拟一个i2c slave 的话,基本不太可能实现,因为实时系统存在最大关中断的时间。接下来谈谈前后台系统的缺点,前后台系统面临的一个直接困境是,软件规模大了,很难管理。处理
    发表于 02-27 14:40

    【uFun试用体验】按键(2)前后台实现

    的扫描程序放到中断里,做一个定时查询,就是一个简单的前后台系统,就是比轮询牛逼一丢丢的程序执行方式。*/#include "stm32f10x.h"#include "
    发表于 04-17 19:15

    常用的Linux命令分享

    今天总结几个非常常用的Linux命令,其中有几个在面试中很可能问相关命令的原理,比如后台运行命令。希望对大家有所帮助,最好自己去尝试在
    发表于 12-28 06:37

    如何利用前后台系统架构去实现倒计时器?

    如何利用前后台系统架构去实现倒计时器?怎样去编写其程序代码?
    发表于 07-16 10:16

    Linux的常用网络命令

    Linux的常用网络命令 Linux 的常用网络命令  计算机网络的主要优点是能够实现资源和信息的共享,并且用户可以远程访问信息。
    发表于 01-18 12:47 1119次阅读

    状态机在嵌入式前后台系统中的应用

    状态机在嵌入式前后台系统中的应用  在嵌入式前后台系统中,外部的异步事件通过中断来捕获并运行在后台,而其他的任务则运行于前台。提高系统
    发表于 03-29 15:08 853次阅读
    状态机在嵌入式<b class='flag-5'>前后台</b>系统中的应用

    如何在 Linux 中不使用 CD 命令进入目录/文件夹?

    众所周知,如果没有 cd 命令,我们无法 Linux切换目录。这个没错,但我们有一个名为 shopt 的 Linux 内置命令能帮助我们
    的头像 发表于 04-16 11:40 5672次阅读

    linux的Shell命令和相关的命令

    如果后台中有多个命令,可以用 fg %jobnumber将选中的命令调出,%jobnumber是通过jobs命令查到的后台正在执行的
    的头像 发表于 10-03 13:14 2255次阅读

    Linux中易混淆命令的区别

    素材来源:Linux迷 sudo 与 su 两个命令的最大区别是:sudo 命令需要输入当前用户的密码,su 命令需要输入 root 用户的密码。另外一个区别是其默认行为。sudo
    的头像 发表于 09-25 14:25 1586次阅读
    <b class='flag-5'>Linux</b>中易混淆<b class='flag-5'>命令</b>的区别

    Linux中的vim命令说明

    1.简介 vim 是 Linux 操作系统中最通用的全屏幕文本编辑器,是 vi 的增强版(vi iMproved),与 vi 完全兼容,且扩充了很多功能。 vim 编辑器支持编辑模式和命令模式,编辑
    的头像 发表于 02-23 11:06 3579次阅读
    <b class='flag-5'>Linux</b>中的vim<b class='flag-5'>命令</b>说明

    7种Linux中Find命令的高级用法

    可以很肯定地说,find 命令Linux 后台开发人员必须熟知的操作之一,除非您使用的是 Windows Server。
    的头像 发表于 03-31 09:27 986次阅读

    shell命令linux命令一样吗

    结合在一起,形成一个相当于面向过程的程序,即shell script,从而实现一些复杂的功能。 而Linux命令则是用来对Linux系统进行管理的
    的头像 发表于 11-08 10:51 1410次阅读

    linux虚拟机怎么调出命令

    Linux虚拟机中调出命令行界面,可以通过以下步骤实现: 打开虚拟机,进入到Linux系统。 在桌面或应用菜单中找到终端或命令行图标,点击
    的头像 发表于 11-08 11:28 1659次阅读

    linux切换命令行模式

    Linux中,可以通过以下步骤切换命令行模式: 打开终端。可以在应用菜单中找到终端或命令行终端。 在终端中输入命令“exit”或“log
    的头像 发表于 11-13 16:47 841次阅读