首页 > 系统相关 >2.进程相关命令用法

2.进程相关命令用法

时间:2023-07-23 23:11:48浏览次数:46  
标签:20 process 用法 命令 sleep nohup 进程 jobs bash

Listing Processes

Processes相关命令的用法

  1. ps aux

    aux是参数,不用加扩折号。

  2. ps -ef

    vboxuser 5377 4706 0 15:59 pts/0 00:00:00 ps -ef

  3. pgrep -l process's name作用是检索进程id,同时显示进程name。

    for example:

    in bash:

     pgrep -l sshd
    

    696 sshd

  4. top

    top命令查看所有进程。

  5. 在命令后加&开启后台进程,非交互式的命令会将输出打印到同一个终端。

    for example:

    in bash:

     ifconfig > output.tx 2> errors.txt &
    

    如果不想命令输出打印到终端,可以这样做:

     ping -c 1 google.com > /dev/null 2>&1 &
    

    /dev/null相当于一个空的设备,俗称文件黑洞blackhole,它会立即丢弃写入其中的任何内容。

  6. jobs命令会在方括号中[]返回进程的jobs id以及process status。

    for example:

    in bash:

     sleep 15& 
     sleep 10& 
     jobs
    

    [3]- Running sleep 20&
    [4]+ Running sleep 12&

     jobs -l
    

    [3]- 3664 Done sleep 20
    [4]+ 3665 Done sleep 12

    这里需要注意的是jobs id是相对于本地shell终端的,而process id是由系统内核维护并且具有全局范围。

  7. 如果你想使bring a background running process to the foreground,使用fg命令,fg即foreground。

    for example:

    in bash:

    sleep 20&
    

    [1] 3875

    jobs
    

    [1]+ Running sleep 20 &

    fg %1 #使后台进程[1]恢复到前台运行
    

    sleep 20

    fgbg也可以用来恢复被ctrl + z中断的进程。

    for example:

    in bash:

    ==sleep== 20
    

    ^Z
    [1]+ Stopped sleep 20

    pgrep -l sleep
    

    3925 sleep

    jobs
    

    [1]+ Stopped sleep 20

    bg %1 #在后台恢复本地进程[1]
    

    [1]+ sleep 20 &

  8. nohupwill make the process to ignore all the hang up signals。

    for example:

    in bash:

     nohup sleep 123 & #使sleep命令忽略所有hang up信号
    

    nohup: ignoring input and appending output to 'nohup.out'

    close the terminal,open it again.

     pgrep -l sleep
    

    4148 sleep

    the sleep process is still there!

    这里注意如果想查看命令输出的结果,可以到'nohup.out'中查看。

    for example:

    in bash:

     nohup ifconfig &
    
     cat nohup.out
    

    ...

    if a process started with nohup and its parent ,which is the bash shell,gets terminated,the process will be adopted by init or systermd which runs as the first process on boot and has PID 1.

    其他命令如screen、Tmux,也可以防止在终端被关闭或断开连接时,运行中的进程被终止。

标签:20,process,用法,命令,sleep,nohup,进程,jobs,bash
From: https://www.cnblogs.com/lyysharedblogs/p/17573489.html

相关文章

  • uboot添加自定义命令 CMD
    原文:https://blog.csdn.net/weixin_41252596/article/details/128317180有些用户玩uboot比较花,除了引导系统还要做一堆驱动,有些驱动除了按流程执行还要留出命令行接口用于调试。比如我现在的设备外接了个fpga,fpga和cpu的接口已经做好了,但是为了调试要新增个命令,在命令行下手动与f......
  • Linux基础命令、目录和文件管理
    目录一、Linux基础命令1.1二、Linux目录和文件管理2.1目录2.2查看文件2.2.1七类常见文件2.2.2显示命令2.2.2.1cat2.2.2.1tac2.2.2.1rev2.2.3分页显示2.2.3.1more2.2.3.2less2.2.4显示文件前后内容2.2.4.1head2.2.4.2tail2.2.4.3tr2.2.4.4cut2.2.4.5wc2.2.4.6grep2.2.4.7paste2.2.4......
  • 考研进程日记
    07/17-07/23408:对计网做完了一遍系统性的总结,开启了计组,并对计组学习产生了兴趣,感觉掌握到了学习一门学科了的路径,数学:从积分到微分到多元微分,也是找到了合适的学习节奏,看武老师的课,笔记,然后做题时以对基础原理方法达到肌肉记忆为目的的联系英语:找到了学习的阅读的方法:1.做阅读......
  • SAP UI5 的 Unified Shell 发展历史和用法介绍试读版
    本教程前面的文章,我们介绍了SAPUI5的UIArea:SAPUI5应用开发教程之六番外篇-什么是SAPUI5应用的UIArea以及SAPUI5容器类控件的一些例子,比如Page和Panel控件:SAPUI5应用开发教程之十一:SAPUI5容器类控件Page和Panel在SAPUI5发展历史上,sap.ui.......
  • 守护进程
    守护进程(DaemonProcess)是在后台运行的一种特殊类型的进程,它不会受到终端控制和交互的影响。守护进程通常用于执行一些系统级的任务或服务,比如网络服务、定时任务等。'''1.创建守护进程:1.在Python中,可以通过multiprocessing模块来创建守护进程。使用multiprocessing.Pr......
  • 根据进程编号杀死指定进程os.kill
    os.kill是Python中用于向指定进程发送信号的函数。通过os.kill可以发送各种不同的信号,其中最常见的是SIGTERM信号,用于请求进程正常终止os.kill的工作原理os.kill函数允许我们向指定的进程发送信号。进程收到信号后,根据信号类型的不同,可以执行相应的处理逻辑。比如,SIGTERM信号会......
  • 进程间的锁和信号量
    锁在multiprocessing模块中,可以使用Lock(锁)来实现进程间的同步。Lock提供了一种机制,确保在任意时刻只有一个进程能够访问共享资源。Lock的工作原理Lock是一种互斥锁,用于保护共享资源的访问。当一个进程获得了锁之后,其他进程将被阻塞,直到锁被释放。只有释放锁的进程才能继续访问......
  • 进程池
    '''multiprocessing还提供了进程池(Pool)的功能,可以方便地管理一组工作进程。进程池中的多个进程可以被重复使用,以执行多个任务,并在完成任务后自动回收进程。'''frommultiprocessingimportPooldefworker(x):returnx*xif__name__=='__main__':#创建了......
  • 进程间通信
    说明进程间除了主子进程共享数据,也可以通过进程间通信实现交互、数据共享multiprocessing提供了多种方式来实现进程间通信,如管道(Pipe)、队列(Queue)和共享内存(Value和Array)等。通过这些机制,不同进程之间可以安全地共享数据或进行通信 队列(Queue)frommultiprocessingimpor......
  • 创建进程
    创建进程步骤1.导入进程包importmultiprocessing2.通过进程类创建进程对象进程对象=multiprocessing.Process()#是Process类3.启动进程执行任务进程对象.start() 示例1#1.导入多进程模块2importmultiprocessi......