导航:首页 > 程序命令 > job命令

job命令

发布时间:2022-10-25 00:40:22

‘壹’ jobs是什么意思

jobs 是linux命令
jobs 命令
用途
显示当前会话的作业状态。
语法
jobs [ -l | -n | -p ] [ JobID ... ]
描述
jobs 命令显示了当前 shell 环境中已启动的作业状态。如果 JobID 参数没有指定特定作业,就显示所有的活动的作业的状态信息。如果报告了一个作业的终止,shell 从当前的 shell 环境已知的列表中删除作业的进程标识。
/usr/bin/jobs 命令在自己的命令执行环境下执行就不会工作,因为此环境没有适用的作业来处理。基于这个原因, jobs 命令实现为一个 Korn shell 或 POSIX shell 的常规内建命令。
如果指定了 -p 标志,对于每一个进程标识,输出构成一行。如果没有指定标志,标准输出为带以下字段的几行:
job-number 指出进程组号,以和 wait、fg、bg 和 kill 命令一起使用。当和这些命令一起使用时,在作业号前面加上一个“%”(百分号标志)。
current 一个“+”(加标志)标识了将被 fg 或 bg 命令作为缺省值使用的作业。这个作业标识也能够使用 %+ (百分号、加号)或 %% (双百分号)来指定。
如果当前缺省作业退出,就用一个“-”(减号标志)来标识将要成为缺省作业的作业。这个作业标识也可以用 %-(百分号、减号)来指定。
对于其他的作业,current 字段是一个空格字符。仅一个作业能够用 + 来标识,并且仅一个作业能够用一个 - 来标识。如果有一个单一挂起作业,它就成为当前作业。如果存在至少两个挂起的作业,那么前面的作业被挂起。
state 显示以下值之一(在 POSIX 的语言环境下):
Running
表示此作业没有被信号挂起并没有退出。
Done
表示此作业已经完成并返回退出状态 0。
Done (code)
表示此作业已经正常完成和退出并返回指定的非零退出状态码。这个代码用一个十进制数来表示。
Stopped
表示此作业已经挂起。
Stopped (SIGTSTP)
表示 SIGTSTP 信号挂起作业。
Stopped (SIGSTOP)
表示 SIGSTOP 信号挂起作业。
Stopped (SIGTTIN)
表示 SIGTTIN 信号挂起作业。
Stopped (SIGTTOU)
表示 SIGTTOU 信号挂起作业。
command 给 shell 的有关命令。
如果指定了 -l 标志,就把一包含进程组标识的字段插入到 state 字段之前。另外,在一个进程组中更多的进程可以输出到一些独立行中,只使用 job-number 和 command 字段。
标志
-l (小写 L)提供了更多的关于列出的每一个作业的信息。此信息包括了作业号、当前作业、进程组标识、状态和启动作业的命令。
-n 显示自从最后一次通知后停止或退出的作业。
-p 显示了所选定的作业的进程组引导符的进程标识。
在缺省情况下,jobs 命令显示了所有已停止作业的状态、所有的在后台正在运行的作业和那些状态已经更改但没有被 shell 报告的作业。
退出状态
返回下面的退出值:
0 成功完成。
>0 发生一个错误。
示例
1. 要显示当前环境下的作业的状态,请输入:
jobs -l
屏幕输出与以下输出类似的报告:
+[4] 139 Running CC - C foo c&
-[3] 465 Stopped mail morris
[2] 687 Done(1) foo.bar&
2. 要显示那些名字以“m”打头的作业的进程标识,请输入:
job -p %m
使用示例 1 中报告的作业,屏幕显示以下进程标识:
465
文件
/usr/bin/ksh 包含 Korn shell jobs 内置命令。
/usr/bin/jobs 包含 jobs 命令。

或者有可能是苹果的总裁乔布斯

‘贰’ LINUX fg,bg,jobs命令的用法

bg(将作业放置于后台执行)(在前台执行时间过长,则可以按ctrl+z,暂停进程,用bg放其至后台)
bg 作业ID
fg(把作业放置前台执行)
jobs(查看后台作业)

‘叁’ 起到linux 的 jobs 命令 作用 的是 什么

jobs:该命令用于查看当前终端后台运行的任务。
ps:该命令用于查看瞬间进程的动态。

通过一个实例可以理解它们之间的区别,依次执行如下命令:
vim & //后台执行vim
jobs //查看后台执行的任务
ps -au //查看当前的进程

‘肆’ jobs的命令示例

1. 要显示当前环境下的作业的状态,请输入:
jobs -l
屏幕输出与以下输出类似的报告:
+[4] 139 Running CC - C foo c&
-[3] 465 Stopped mail morris
[2] 687 Done(1) foo.bar&
2. 要显示那些名字以“m”打头的作业的进程标识,请输入:
job -p %m
使用示例 1 中报告的作业,屏幕显示以下进程标识:
465
文件
/usr/bin/ksh 包含 Korn shell jobs 内置命令。
/usr/bin/jobs 包含 jobs 命令。

‘伍’ linux 中 jobs 是哪个英文的缩写

jobs不是任何单词的缩写,是job(作业)的复数形式。这是shell的内置命令,显示当前运行的作业

‘陆’ linux中的.job文件(不是关于前台或后台的切换)如何运行路径如何设置怎么进行操作

当用bash启动一个程序,你可以用在程序后加&,实现程序在后台运行;
例如: emacs &
但如果你忘了输入&;但你又不想把程序停止后重新启动;
你可以这么做:
按Ctrl + Z暂停前台工作,比如前面提到的Emacs;
然后用jobs命令查看当前bash一共启动了多少程序,你可以看到你的emacs在其中,它的状态是Stoped的; 并且它的jobID也可以看,比如是2
然后用命令bg 2
这样你就可以达到和emacs &一样的效果了。
当你有些工作比如updatedb, find等需要一定时间,这些工作可以考虑让它在后台运行,而你可以用bash做其它工作。
A,Shell支持作用控制,有以下命令:
1. command& 让进程在后台运行
2. jobs 查看后台运行的进程
3. fg %n 让后台运行的进程n到前台来
4. bg %n 让进程n到后台去;
PS:"n"为jobs查看到的进程编号.
B.下列转:http://blog.chinaunix.net/u/1604/showart_1079559.html
fg、bg、jobs、&、ctrl + z都是跟系统任务有关的,虽然现在基本上不怎么需要用到这些命令,但学会了也是很实用的
一。& 最经常被用到
这个用在一个命令的最后,可以把这个命令放到后台执行
二。ctrl + z
可以将一个正在前台执行的命令放到后台,并且暂停
三。jobs
查看当前有多少在后台运行的命令
四。fg
将后台中的命令调至前台继续运行
如果后台中有多个命令,可以用 fg %jobnumber将选中的命令调出,%jobnumber是通过jobs命令查到的后台正在执行的命令的序号(不是pid)
五。bg
将一个在后台暂停的命令,变成继续执行
如果后台中有多个命令,可以用bg %jobnumber将选中的命令调出,%jobnumber是通过jobs命令查到的后台正在执行的命令的序号(不是pid)
#Linux下使用Shell命令控制任务Jobs执行
下列命令可以用来操纵进程任务:
ps 列出系统中正在运行的进程;
kill 发送信号给一个或多个进程(经常用来杀死一个进程);
jobs 列出当前shell环境中已启动的任务状态,若未指定jobsid,则显示所有活动的任务状态信息;如果报告了一个任务的终止(即任务的状态被标记为Terminated),shell 从当前的shell环境已知的列表中删除任务的进程标识;
bg 将进程搬到后台运行(Background);
fg 将进程搬到前台运行(Foreground);
将job转移到后台运行
如果你经常在X图形下工作,你可能有这样的经历:通过终端命令运行一个GUI程序,GUI界面出来了,但是你的终端还停留在原地,你不能在shell中继续执行其他命令了,除非将GUI程序关掉。
为了使程序执行后终端还能继续接受命令,你可以将进程移到后台运行,使用如下命令运行程序: #假设要运行xmms
$xmms &
这样打开xmms后,终端的提示又回来了。现在xmms在后台运行着呢;但万一你运行程序时忘记使用“&”了,又不想重新执行;你可以先使用ctrl+z挂起程序,然后敲入bg命令,这样程序就在后台继续运行了。
概念:当前任务
如果后台的任务号有2个,[1],[2];如果当第一个后台任务顺利执行完毕,第二个后台任务还在执行中时,当前任务便会自动变成后台任务号码“[2]”的后台任务。所以可以得出一点,即当前任务是会变动的。当用户输入“fg”、“bg”和“stop”等命令时,如果不加任何引号,则所变动的均是当前任务。
察看jobs
使用jobs或ps命令可以察看正在执行的jobs。
jobs命令执行的结果,+表示是一个当前的作业,减号表是是一个当前作业之后的一个作业,jobs -l选项可显示所有任务的PID,jobs的状态可以是running, stopped, Terminated,但是如果任务被终止了(kill),shell 从当前的shell环境已知的列表中删除任务的进程标识;也就是说,jobs命令显示的是当前shell环境中所起的后台正在运行或者被挂起的任务信息;
进程的挂起
后台进程的挂起:
在solaris中通过stop命令执行,通过jobs命令查看job号(假设为num),然后执行stop %num;
在redhat中,不存在stop命令,可通过执行命令kill -stop PID,将进程挂起;
当要重新执行当前被挂起的任务时,通过bg %num 即可将挂起的job的状态由stopped改为running,仍在后台执行;当需要改为在前台执行时,执行命令fg %num即可;
前台进程的挂起:
ctrl+Z;
进程的终止
后台进程的终止:
方法一:
通过jobs命令查看job号(假设为num),然后执行kill %num
方法二:
通过ps命令查看job的进程号(PID,假设为pid),然后执行kill pid
前台进程的终止:
ctrl+c
kill的其他作用
kill除了可以终止进程,还能给进程发送其它信号,使用kill -l 可以察看kill支持的信号。
SIGTERM是不带参数时kill发送的信号,意思是要进程终止运行,但执行与否还得看进程是否支持。如果进程还没有终止,可以使用kill -SIGKILL pid,这是由内核来终止进程,进程不能监听这个信号。

‘柒’ Linux命令中ps和jobs区别

jobs:该命令用于查看当前终端后台运行的任务。

ps:该命令用于查看瞬间进程的动态。


通过一个实例可以理解它们之间的区别,依次执行如下命令:

vim & //后台执行vim

jobs //查看后台执行的任务

ps -au //查看当前的进程


执行效果如下图所示:

‘捌’ linux下jobs命令为什么没显示

jobs命令是用来显示后台工作的,所谓后台工作是指在某个命令执行的过程中(命令没有执行完,就是一些费用时间的命令,不会一下执行结束的), 按下键盘上的Ctrl+Z组合键暂停进程并将之丢入后台;还有一种情况是直接将命令放入后台执行,那就是在命令的最末尾加上一个&符号,比如这条命令:tar -zxv -f test.tar.gz -C /tmp > /dev/null &。如果你之前没有这两种操作,jobs命令是不会显示任何内容的,因为jobs命令是job control,也就是所谓的作业控制,而不是查看后台进程的命令(它所显示的后台工作,是指作业控制中的工作)。

‘玖’ ORACLE如何停止一个JOB

在ORACLE中停止一个JOB的方法如下:

首先确定要停止的JOB号,在10g中可通过Dba_Jobs_Running进行确认。

查找正在运行的JOB:

selectsidfromdba_jobs_running;

查找到正在运行的JOB的spid:

selecta.spidfromv$processa,v$sessionbwherea.addr=b.paddrandb.sidin(selectsidfromdba_jobs_running);

Broken确认的JOB,注意使用DBMS_JOB包来标识你的JOB为BROKEN。

SQL> EXEC DBMS_JOB.BROKEN(job#,TRUE);

注意:当执行完该命令你选择的这个JOB还是在运行着的。

Kill对应的OracleSession,应为BROKEN后该JOB还在运行,如果要求该JOB立刻停止,就需要找到该job的对应SESSION(SID,SERIAL#),然后执行以下命令:

ALTERSYSTEMKILLSESSION‘sid,serial#';

或者直接KILL对应的操作系统的SESSION。

如果使用ALTERSYSTEMKILLSESSION执行很长时间,其实可以使用OS的命令来快速KILL掉SESSION.ForWindows,attheDOSPrompt:

orakill sid spid;For UNIX at the command line> kill –9 spid。

检查要停止的JOB是否还在运行,其实多数情况下,应该都已经停止了。尤其执行的第三步的“杀手”命令。

如果真的还是没有停止,只好从第一道第三步重新做一下了。

将JobQueueProcesses的数目修改为0,首先确认当前的JobQueueProcesses的数目:

SQL> col value for a10SQL> select name,value from v$parameter where name =’job_queue_processes';

然后将JobQueueProcesses的数目修改为0。

SQL> ALTER SYSTEM SET job_queue_processes = 0;

保证所有的JOB都会停止。修改要修改的任何东西,甚至是JOB内的内容,修改完成后,将job的BROKEN状态停止。

SQL>EXEC DBMS_JOB.BROKEN(job#,FALSE):

恢复job_queue_processes的原始值:

ALTERSYSTEMSETjob_queue_processes=original_value;

至此整个停止并修改JOB完成。

但是需要另外注意一下的是,在MARK一个BROKEN状态的时候,因为JOB内部执行SQL的原因,所以执行时或许要“煎熬”一段时间。所以在建立JOB时一定要仔细考虑,同时如果可能可以在你设计的PL/SQL代码中,增加一些判断“停止信号”的部分。来避免费力执行上面的步骤。

(9)job命令扩展阅读:

很多时候遇到某个session一直处于active,使得CPU一直处于搞使用状态,虽然kill了,但是却不能够使得使得线程结束。killsession只是kill这个进程,但是线程一直处于活动状态。需要真正的kill线程才能够解决cpu使用率高的问题。

Oracle数据库最新版本为OracleDatabase19c。Oracle数据库12c引入了一个新的多承租方架构,使用该架构可轻松部署和管理数据库云。

此外,一些创新特性可最大限度地提高资源使用率和灵活性,如OracleMultitenant可快速整合多个数据库,而AutomaticDataOptimization和HeatMap能以更高的密度压缩数据和对数据分层。

这些独一无二的技术进步再加上在可用性、安全性和大数据支持方面的主要增强,使得Oracle数据库12c成为私有云和公有云部署的理想平台。

阅读全文

与job命令相关的资料

热点内容
幻影服务器怎么样 浏览:25
具体哪些广东公司招程序员 浏览:867
嵌入式编译器教程 浏览:302
ssl数据加密传输 浏览:86
51单片机定时器方式2 浏览:330
命令行查看开机时间 浏览:812
python微博复杂网络分析 浏览:550
rf3148编程器 浏览:505
浙江标准网络服务器机柜云主机 浏览:587
设置网络的服务器地址 浏览:600
java图形界面设计 浏览:751
纯前端项目怎么部署到服务器 浏览:538
瓜子脸程序员 浏览:505
如何保证服务器优质 浏览:94
小微信aPP怎么一下找不到了 浏览:299
算法纂要学术价值 浏览:975
程序员你好是什么意思 浏览:802
倩女幽魂老服务器如何玩 浏览:563
电子钟单片机课程设计实验报告 浏览:1001
看加密频道 浏览:382