Linux系列-命令行BASH的基本操作

本文深入探讨了bash环境下的作业管理,包括如何使用&符号将命令置于后台执行,如何通过jobs命令观察后台作业状态,以及如何利用fg和bg命令将作业从后台调回前台或让其继续在后台运行。此外,文章还详细介绍了如何使用kill命令结束不必要的后台作业,并提供了bash命令行的其他实用技巧。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >








作业管理:&、jobs、fg、bg、kill介绍

      作业管理(job control)是在bash环境下使用的,也就是说,当我们登录系统获取bash shell之后,在单一终端界面下,同时管理多个作业。下面分别介绍与作业管理有关的几个常用命令:

一、直接将命令放到后台执行的 "&"
在bash环境下,前台:您可以控制的作业称为前台作业(foreground),后台:在内存可以自行运行的作业,您好无法直接控制他,除非以bg/fg命令把该作业调用出来。

"&" 用法:
# tar -zpcf /tmp/etc/tar.gz /etc &    
备注:tar是解压命令,该命令意思是将解压任务放到后台执行
[1] 234 <== [job number] PID

#  <==可继续继续工作,不受影响,这就是后台

把当前作业放到后台暂停:[Ctrl] + z,有些时候我们正在使用vi逻辑一个文件,突然有其它事情,需要切换到bash环境去执行相关命令,喧是我们直接退出vi逻辑环境?当然不需要,我们只需用命令[Ctrl]+z ,然该作业暂停到后台,状态Stopped.
如:
#vi /etc/profile
#在vi的一般模式下,按下[Ctrl]+z组合键
[1]+ Stopped   /usr/bin/vim /etc/profile
#   <==顺序获取了前台的控制权

二、观察当前后台作业状态: jobs
如观察当前bash中的所有作业与对应的PID.

#jobs -l
[1]+ Stopped   /usr/bin/vim /etc/profile
[2]- Stopped   /usr/bin/vim /etc/profile.conf

说明:上面的 -l 表示让列表现示作业号的PID,另外(+-)号,(+)号表示默认的作业,如我在bash中输入fg,则[1] 会被自动执行。

三、将后台作业拿到前台处理:fg
#fg %jobnumber

我们可先用上面介绍的jobs -l命令查询目前所有的作业号,然后再执行fg %jobnumber命令。应能够将后台作业拿到前台来处理。

四、让作业在后台运行:bg
我们刚才介绍了用[Ctrl]+z可以让当前作业放到后台去"暂停",那么,现在我们可以让一个作业在后台运行。
如:
#find / -perm +7000
#此时,请立刻按下[ctrl]+z暂停。
[1]+ Stopped   #find / -perm +7000

#然后让它在后台运行

#bg %1

五、管理后台作业:kill
有时我们不想让一个作业再继续运行了,这时我们可以向系统发一个signal,来kill这个作业,
#kill -signal %jobnumber
常用参数:
-9:  立刻强制删除一个作业
-15:以正常的程序方式终止一项作业,与-9是不一样的。

#jobs
[1]+ Stopped   vim bashrc
#kill -9 %1
[1]+ 终止    vim bashrc

以上内容为转载,下面补充几点:
1:su - 与 su 的区别 加上- 启用一个全新的终端 不加 不启用全新终端 sudo 使用管理员身份去运行 
2:history查看历史命令 在控制台输入history

3:firefix & 加上&之后 表示该程序在后台运行! 
4:!! 重复前一个命令 
5:!字符 重复前一个以"字符"开头的命令 
6:!num 按照历史记录的序号执行命令   (history记录第一列为序号 如上图的 993-1012)
7:!?abc 重复之前包括abc的命令 
8:!-n 重复n个命令之前的那个命令


9:linux 命令由命令、选项、参数组成 (命令可以连续敲两个tab键补全)
10:root@localhost 以root用户的身份登录到localhost主机上
11:BASH :linux 命令行 提示符:#(root用户) $(普通用户) 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值