d linux z_linux 进程d z r s - CSDN
  • Linux中ctrl+z 、ctrl+c、 ctrl+d区别

    万次阅读 多人点赞 2014-12-08 23:07:24
    ctrl+c,ctrl+d,ctrl+zlinux中意义和区别

    ctrl+c,ctrl+d,ctrl+z在linux程序中意义和区别

    ctrl+c和ctrl+z都是中断命令,但是他们的作用却不一样.
     
    ctrl+c是强制中断程序的执行,,进程已经终止。
     
    ctrl+z的是将任务中止(暂停的意思),但是此任务并没有结束,他仍然在进程中他只是维持挂起的状态,用户可以使用fg/bg操作继续前台或后台的任务,fg命令重新启动前台被中断的任务,bg命令把被中断的任务放在后台执行.
     
    例如:当你vi一个文件是,如果需要用shell执行别的操作,但是你又不打算关闭vi,因为你得存盘推出,你可以简单的按下ctrl+z,shell会将vi进程挂起~,当你结束了那个shell操作之后,你可以用fg命令继续vi你的文件。
     
    ctrl-d 不是发送信号,而是表示一个特殊的二进制值,表示 EOF。
    注:在shell中,ctrl-d表示推出当前shell.
    展开全文
  • Ctrl+c,Ctrl+d,Ctrl+zLinux中意义 Ctrl+c和ctrl+z都是中断命令,但是他们的作用却不一样. Ctrl+c是强制中断程序的执行。 Ctrl+z的是将任务中断,但是此任务并没有结束,他仍然在进程中他只是维持挂起的状态。 ...

    Ctrl+c,Ctrl+d,Ctrl+z在Linux中意义

    Ctrl+c和ctrl+z都是中断命令,但是他们的作用却不一样.

    Ctrl+c是强制中断程序的执行。

    Ctrl+z的是将任务中断,但是此任务并没有结束,他仍然在进程中他只是维持挂起的状态。

    [root@localhost ~]# ping baidu.com
    PING baidu.com (220.181.57.217) 56(84) bytes of data.
    64 bytes from 220.181.57.217: icmp_seq=1 ttl=128 time=58.7 ms
    64 bytes from 220.181.57.217: icmp_seq=2 ttl=128 time=76.6 ms
    64 bytes from 220.181.57.217: icmp_seq=3 ttl=128 time=54.6 ms
    64 bytes from 220.181.57.217: icmp_seq=4 ttl=128 time=72.7 ms
    64 bytes from 220.181.57.217: icmp_seq=5 ttl=128 time=51.3 ms
    64 bytes from 220.181.57.217: icmp_seq=6 ttl=128 time=124 ms
    64 bytes from 220.181.57.217: icmp_seq=7 ttl=128 time=71.2 ms
    64 bytes from 220.181.57.217: icmp_seq=8 ttl=128 time=52.4 ms
    64 bytes from 220.181.57.217: icmp_seq=9 ttl=128 time=51.7 ms
    64 bytes from 220.181.57.217: icmp_seq=10 ttl=128 time=254 ms
    64 bytes from 220.181.57.217: icmp_seq=12 ttl=128 time=64.2 ms
    64 bytes from 220.181.57.217: icmp_seq=13 ttl=128 time=51.8 ms
    64 bytes from 220.181.57.217: icmp_seq=14 ttl=128 time=92.5 ms
    64 bytes from 220.181.57.217: icmp_seq=15 ttl=128 time=52.1 ms
    64 bytes from 220.181.57.217: icmp_seq=16 ttl=128 time=51.8 ms
    ^Z
    [1]+  Stopped                 ping baidu.com

     

    用户可以使用fg/bg操作继续前台或后台的任务, 
    fg命令重新启动前台被中断的任务,

    [root@localhost ~]# fg
    ping baidu.com
    64 bytes from 180.149.132.47: icmp_seq=6 ttl=128 time=59.0 ms
    64 bytes from 180.149.132.47: icmp_seq=7 ttl=128 time=67.2 ms
    64 bytes from 180.149.132.47: icmp_seq=8 ttl=128 time=54.5 ms
    64 bytes from 180.149.132.47: icmp_seq=10 ttl=128 time=55.9 ms
    64 bytes from 180.149.132.47: icmp_seq=12 ttl=128 time=56.8 ms
    64 bytes from 180.149.132.47: icmp_seq=13 ttl=128 time=60.0 ms
    64 bytes from 180.149.132.47: icmp_seq=14 ttl=128 time=155 ms
    ^Z
    [1]+  Stopped                 ping baidu.com

     

    bg命令把被中断的任务放在后台执行.

    例如:当你vi一个文件是,如果需要用shell执行别的操作,但是你又不打算关闭vi,因为你得存盘推出,你可以简单的按下Ctrl+z,shell会将vi进程挂起~,当你结束了那个shell操作之后,你可以用fg命令继续vi你的文件。

    Ctrl+d 不是发送信号,而是表示一个特殊的二进制值,表示 EOF。

     

     

    最近整理出了有关大数据,微服务,分布式,Java,Python,Web前端,产品运营,交互等1.7G的学习资料,有视频教程,源码,课件,软件工具,面试题等等,这里将珍藏多年的资源免费分享给各位小伙伴们。

    领取方式:https://blog.csdn.net/qq_42914528/article/details/81777449                                      

                                                             

    欢迎大家关注我的公众号:

    里面会分享很多JAVA技术、新知识、新技术、面试宝典等。
    有让技术爱好者(程序猿)得到很大提升的文章资料。

    还在犹豫什么,赶紧关注一波,微信搜索公众号:程序员的成长之路。或者扫描下方二维码进行关注。

                                                                         

                                                                           欢迎关注公众号,和我一起成长!

     

    展开全文
  • linux进程状态DZ的处理

    万次阅读 2009-06-22 14:27:00
    原贴:http://www.lupaworld.com/94908/viewspace-60895.htmllinux进程状态DZ的处理上一篇 / 下一篇 2008-05-21 16:44:05 / 个人分类:linux编程 查看( 327 ) / 评论( 4 ) / 评分( 0 / 5 ) 长期生活在 Linux 环境里...

    原贴:http://www.lupaworld.com/94908/viewspace-60895.html

    linux进程状态D和Z的处理

    上一篇 / 下一篇  2008-05-21 16:44:05 / 个人分类:linux编程

    长期生活在 Linux 环境里,渐渐地就有一种环保意识油然而生。比如,我们会在登录提示里写上“悟空,我跟你说过叫你不要乱扔东西,乱扔东西是不对的。哎呀我话没说完你怎么把棍子扔掉了?月光宝盒是宝物,乱扔它会污染环境,要是砸到小朋友怎么办?就算砸不到小朋友,砸到了花花草草也不好嘛...”;在用户缺省目录里放一个题为 “自觉保护环境 请勿堆放垃圾”的空文件,并用 chattr +i 设为不可修改;看到垃圾文件就立即扫入 /tmp 目录,然后发广播通知垃圾制造者自己去 /tmp 认领,且警告其下不为例...我们深知,系统环境的整洁有利于系统管理员保持良好的心情、清晰的思路和稳定的工作状态。

      有一类垃圾却并非这么容易打扫,那就是我们常见的状态为 D (Uninterruptible sleep) ,以及状态为 Z (Zombie) 的垃圾进程。这些垃圾进程要么是求而不得,像怨妇一般等待资源(D),要么是僵而不死,像冤魂一样等待超度(Z),它们在 CPU run_queue 里滞留不去,把 Load Average 弄的老高老高,没看过我前一篇blog的国际友人还以为这儿民怨沸腾又出了什么大事呢。怎么办?开枪!kill -9!看你们走是不走。但这两种垃圾进程偏偏是刀枪不入的,不管换哪种枪法都杀不掉它们。无奈,只好reboot,像剿灭禽流感那样不分青红皂白地一律扑杀!

      悟空,我们所运维的可是24*7全天候对外部客户服务的系统,怎么能动不动就 reboot ?我们的考核指标可是4个9(99.99%,全年计划外当机时间不得超过52分钟34秒),又不是4个8,你稍微遇到点事就reboot,还要不要可用性了?再说,现在社会都开始奔和谐去了,我们对于 D 和 Z 这两种垃圾进程,也该尽可能采取慈悲手段,能解决其困难的,就创造条件,解决其实际困难,能消除其冤结的,就诵经烧纸,消除其前世冤结,具体问题应具体分析具体解决,滥杀无辜只会导致冤冤相报因果循环。

      贫僧还是回来说正题。怨妇 D,往往是由于 I/O 资源得不到满足,而引发等待,在内核源码 fs/proc/array.c 里,其文字定义为“ "D (disk sleep)", /* 2 */ ”(由此可知 D 原是Disk的打头字母),对应着 include/linux/sched.h 里的“ #define TASK_UNINTERRUPTIBLE 2 ”。举个例子,当 NFS 服务端关闭之时,若未事先 umount 相关目录,在 NFS 客户端执行 df 就会挂住整个登录会话,按 Ctrl+C 、Ctrl+Z 都无济于事。断开连接再登录,执行 ps axf 则看到刚才的 df 进程状态位已变成了 D ,kill -9 无法杀灭。正确的处理方式,是马上恢复 NFS 服务端,再度提供服务,刚才挂起的 df 进程发现了其苦苦等待的资源,便完成任务,自动消亡。若 NFS 服务端无法恢复服务,在 reboot 之前也应将 /etc/mtab 里的相关 NFS mount 项删除,以免 reboot 过程例行调用 netfs stop 时再次发生等待资源,导致系统重启过程挂起。

      冤魂 Z 之所以杀不死,是因为它已经死了,否则怎么叫 Zombie(僵尸)呢?冤魂不散,自然是生前有结未解之故。在UNIX/Linux中,每个进程都有一个父进程,进程号叫PID(Process ID),相应地,父进程号就叫PPID(Parent PID)。当进程死亡时,它会自动关闭已打开的文件,舍弃已占用的内存、交换空间等等系统资源,然后向其父进程返回一个退出状态值,报告死讯。如果程序有 bug,就会在这最后一步出问题。儿子说我死了,老子却没听见,没有及时收棺入殓,儿子便成了僵尸。在UNIX/Linux中消灭僵尸的手段比较残忍,执行 ps axjf 找出僵尸进程的父进程号(PPID,第一列),先杀其父,然后再由进程天子 init(其PID为1,PPID为0)来一起收拾父子僵尸,超度亡魂,往生极乐。注意,子进程变成僵尸只是碍眼而已,并不碍事,如果僵尸的父进程当前有要务在身,则千万不可贸然杀之。
    备注:
    PROCESS STATE CODES
    Here are the different values that the s, stat and state output specifiers
    (header "STAT" or "S") will display to describe the state of a process.
    D Uninterruptible sleep (usually IO)
    R Running or runnable (on run queue)
    S Interruptible sleep (waiting for an event to complete)
    T Stopped, either by a job control signal or because it is being traced.
    W paging (not valid since the 2.6.xx kernel)
    X dead (should never be seen)
    Z Defunct ("zombie") process, terminated but not reaped by its parent.

    For BSD formats and when the stat keyword is used, additional characters may
    be displayed:
    < high-priority (not nice to other users)
    N low-priority (nice to other users)
    L has pages locked into memory (for real-time and custom IO)
    s is a session leader
    l is multi-threaded (using CLONE_THREAD, like NPTL pthreads do)
    + is in the foreground process group

    TAG:

    引用 删除 Guest   /   2009-05-22 16:37:51
    -5
    超级玛丽 引用 删除 ckhitler   /   2009-05-19 19:13:54
    不错。我之前也写过这样的文章,进程有6种状态,分别是(z,x,s,d,t,r),UNIX是一套伟大的系统.
    引用 删除 gnufeng   /   2008-09-13 08:13:30
    对D状态的处理好像还不完全啊,有没有办法让进程永远没有D状态呢?
    仰空冥思 引用 删除 陈莉君   /   2008-05-21 23:15:31
    展开全文
  • Linux中ctrl-c, ctrl-z, ctrl-d 区别

    万次阅读 多人点赞 2014-08-05 16:40:04
    Linux中:  ctrl-c:

    在Linux中:


    ctrl-c: ( kill foreground process ) 发送 SIGINT 信号给前台进程组中的所有进程,强制终止程序的执行;

    ctrl-z: ( suspend foreground process ) 发送 SIGTSTP 信号给前台进程组中的所有进程,常用于挂起一个进程,而

                非结束进程,用户可以使用使用fg/bg操作恢复执行前台或后台的进程。fg命令在前台恢复执行被挂起的进

                程,此时可以使用ctrl-z再次挂起该进程,bg命令在后台恢复执行被挂起的进程,而此时将无法使用ctrl-z

                再次挂起该进程;

                一个比较常用的功能:

                       正在使用vi编辑一个文件时,需要执行shell命令查询一些需要的信息,可以使用ctrl-z挂起vi,等执行                   完shell命令后再使用fg恢复vi继续编辑你的文件(当然,也可以在vi中使用!command方式执行shell命令

                但是没有该方法方便)。

    ctrl-d: ( Terminate input, or exit shell ) 一个特殊的二进制值,表示 EOF,作用相当于在终端中输入exit后回车;


    还有以下几个:


    ctrl-/    发送 SIGQUIT 信号给前台进程组中的所有进程,终止前台进程并生成 core 文件

    ctrl-s   中断控制台输出

    ctrl-q   恢复控制台输出

    ctrl-l    清屏


    其实,控制字符都是可以通过stty命令更改的,可在终端中输入命令"stty -a"查看终端配置




    展开全文
  • 如何在linux平台安装zint开源库

    万次阅读 2018-12-27 12:20:45
    如何在linux平台安装zint开源库 一、zint开源库的介绍 zint 是一个开源的条码编码库,它支持超过50种条码,包括 Code-128, Data Matrix, EAN-128, UPC/EAN, ITF, QR Code, Code 16k, PDF417, ...
  • Linux命令中Ctrl+z、Ctrl+c和Ctrl+d

    万次阅读 2019-01-15 23:04:46
    Ctrl+z的是将任务中断,但是此任务并没有结束,他仍然在进程中他只是维持挂起的状态 Ctrl+d 不是发送信号,而是表示一个特殊的二进制值,表示 EOF。 [root@localhost ~]# ping baidu.com PING baidu.com (220.181....
  • Linux进程状态(ps stat)之R、S、D、T、Z、X 2012 年 03 月 11 日Posted by Jian Linux是一个多用户,多任务的系统,可以同时运行多个用户的多个程序,就必然会产生很多的进程,而每个进程会有不同的状态。
  • Linux中Ctrl+C,Ctrl+Z,Ctrl+D说明

    千次阅读 2018-03-17 14:37:24
    Ctrl+Z:送SIGSTOP信号,进程只是被停止,再送SIGCONT信号,进程继续运行。 Ctrl+D:不是发送信号,而是表示一个特殊的二进制值,表示 EOF。 有些信号不能被屏蔽,比如中断,还应该有杀死进程的信号,要不然...
  • Linux中: ctrl-c:( kill foreground process ) 发送 SIGINT 信号给前台进程组中的所有进程,强制终止程序的执行; ctrl-z:( suspend foreground process ) 发送 SIGTSTP 信号给前台进程组中的所有进程,常用于...
  • Linux进程状态解析之R、S、D、T、Z、X

    万次阅读 2012-04-08 15:22:15
    Linux是一个多用户,多任务的系统,可以同时运行多个用户的多个程序,就必然会产生很多的进程,而每个进程会有不同的状态。Linux进程状态:R (TASK_RUNNING),可执行状态。只有在该状态的进程才可能在CPU上运行。而...
  • 作者:reille ... 本文内容概要: 7z具有很高的压缩率,这对存储空间资源比较敏感的嵌入式系统是很有用处...本文即说明在宿主机linux中7z命令的安装、交叉编译7z命令从而可在嵌入式arm平台上使用该命令、7z命令的使用
  • linux下如何结束进程(ctrl+c\ctrl+z\ctrl+d\ctrl+\的区别和用法)
  • tartar是在Linux中使用得非常广泛的文档打包格式。它的好处就是它只消耗非常少的CPU以及时间去打包文件,但它仅仅只是一个打包工具,并不负责压缩。下面是如何打包一个目录:# tar -cvf archive_name.tar directory_...
  • Linux终极shell-Z Shell--用强大的zsh & oh-my-zsh把Bash换掉

    万次阅读 多人点赞 2016-10-06 10:39:33
    大多数的Linux用户偏爱Bash,因为发行版通常默认的就是它。 Bash确实是不错的Shell,但仍有用很多不尽人意的地方,如自动补全的功能不够强大,定位较长路径不够方便,命令历史管理不够完善等。我是经一个朋友(超级...
1 2 3 4 5 ... 20
收藏数 219,220
精华内容 87,688
关键字:

d linux z