linux在已有进程上继续运行命令

worktile 其他 66

回复

共3条回复 我来回复
  • worktile的头像
    worktile
    Worktile官方账号
    评论

    在Linux中,可以通过几种方法在已有进程上继续运行命令。以下是几种常用的方法:

    1. 使用管道(|)命令:
    使用管道命令可以将一个进程的输出作为另一个进程的输入。例如,要在一个已有进程上运行命令,可以使用以下命令:

    `$ ps aux | grep <进程名称>`

    上面的命令会显示与指定进程名称匹配的所有进程,并且可以在这些进程上继续运行其他命令。

    2. 使用进程ID(PID):
    Linux系统中,每个进程都有一个唯一的进程ID(PID)。可以使用PID来操作一个已有进程。例如,要在一个已有进程上运行命令,可以使用以下命令:

    `$ kill -SIGCONT `

    上面的命令会向指定的进程发送SIGCONT信号,该信号会使进程从暂停状态(如停止或挂起)恢复到运行状态,然后可以在该进程上继续运行其他命令。

    3. 使用nohup命令:
    nohup命令可以在后台运行命令,并将命令的输出重定向到一个文件中,从而避免命令因为终端关闭而终止。要在一个已有进程上继续运行命令,可以使用以下命令:

    `$ nohup <命令> &`

    上面的命令会将指定的命令放在后台运行,并将输出重定向到一个名为nohup.out的文件中。这样即使关闭终端,命令仍然会在后台继续运行。

    4. 使用screen命令:
    screen命令是一个终端复用程序,可以在一个终端窗口中创建多个虚拟终端,并在每个虚拟终端中运行命令。要在一个已有进程上继续运行命令,可以使用以下命令:

    `$ screen -r <会话名称>`

    上面的命令会连接到指定的会话,并显示其中正在运行的进程。可以在会话中创建新的窗口,并在其中继续运行其他命令。

    以上是在Linux中在已有进程上继续运行命令的几种方法。可以根据具体的需求和场景选择合适的方法。

    2年前 0条评论
  • 不及物动词的头像
    不及物动词
    这个人很懒,什么都没有留下~
    评论

    在Linux中,有几种方法可以在已有进程上继续运行命令。

    1. 使用前台运行命令
    可以通过在终端中按下 “Ctrl+Z” 暂停当前正在运行的进程,然后使用 “bg” 命令将进程放到后台运行。此时,你可以在同一终端中继续运行其他命令,并且之前的进程会保持在后台运行。

    2. 使用后台运行命令
    如果你已经有一个正在运行的命令,但是想要在同一终端中继续运行其他命令,可以使用 “&” 符号将当前命令放到后台运行。例如:
    “`
    $ command1 &
    “`
    这样,命令1将在后台运行,你可以继续在终端中执行其他命令。

    3. 使用nohup命令
    如果你希望在终端退出后,后台进程仍然继续运行,可以使用 “nohup” 命令。例如:
    “`
    $ nohup command &
    “`
    这样,无论你是否关闭终端,命令将继续在后台运行。输出会被重定向到nohup.out文件中。

    4. 使用screen命令
    “screen” 命令是一个终端多路复用器,它可以创建一个虚拟终端,并在其中运行命令。你可以在自己的虚拟终端中运行命令,并随时从主终端中分离它。当你再次连接到主终端时,你可以重新附加到虚拟终端,并继续在其中运行命令。

    首先,你需要安装 “screen” 工具,然后可以使用以下命令创建一个新的虚拟终端:
    “`
    $ screen
    “`
    在虚拟终端中,你可以运行你的命令。要在虚拟终端和主终端之间切换,你可以使用以下键盘快捷键:
    – Detach: Ctrl+A, Ctr

    2年前 0条评论
  • fiy的头像
    fiy
    Worktile&PingCode市场小伙伴
    评论

    在Linux系统中,可以使用以下几种方法在已有进程上继续运行命令:

    1. 使用`nohup`命令

    `nohup`命令可以在后台运行进程,并且在Shell退出后继续运行。以下是使用`nohup`命令的操作流程:

    1) 执行命令`nohup &`,其中``是要运行的命令,`&`表示在后台运行。
    2) 命令执行后,会生成一个`nohup.out`文件,将命令的输出重定向到该文件中。
    3) 用户可以随时退出Shell,进程将继续在后台运行,直到完成或被手动停止。

    2. 使用`disown`命令

    `disown`命令可以将已经在后台运行的作业从Shell中“解绑”,使其不再受Shell控制。以下是使用`disown`命令的操作流程:

    1) 执行命令` &`,其中``是要运行的命令,`&`表示在后台运行。
    2) 使用`jobs`命令查看后台作业的编号。
    3) 执行命令`disown %`,其中``是作业的编号。
    4) 命令执行后,作业将不再受Shell控制,并且继续在后台运行。

    3. 使用`screen`命令

    `screen`命令可以创建一个虚拟终端,并在其中运行命令。以下是使用`screen`命令的操作流程:

    1) 执行命令`screen`,启动一个新的虚拟终端。
    2) 在虚拟终端中执行需要在已有进程上运行的命令。
    3) 使用快捷键`Ctrl+a`,然后按下`d`,将虚拟终端转入后台运行。
    4) 用户可以随时退出Shell,进程将继续在后台运行。
    5) 当需要再次进入虚拟终端时,可以执行命令`screen -r`。

    4. 使用`bg`和`fg`命令

    `bg`命令可以将一个停止的作业切换到后台继续运行,`fg`命令可以将一个后台运行的作业切换到前台继续运行。以下是使用`bg`和`fg`命令的操作流程:

    1) 执行命令` &`,其中``是要运行的命令,`&`表示在后台运行。
    2) 使用`jobs`命令查看后台作业的编号。
    3) 执行命令`bg %`,其中``是作业的编号,将作业切换到后台继续运行。
    4) 当需要将后台作业切换到前台继续运行时,执行命令`fg %
    `。

    以上是在Linux系统中在已有进程上继续运行命令的几种方法,用户可以根据自己的需求选择适合的方法。

    2年前 0条评论
注册PingCode 在线客服
站长微信
站长微信
电话联系

400-800-1024

工作日9:30-21:00在线

分享本页
返回顶部