linux怎么使命令在后台执行

fiy 其他 21

回复

共3条回复 我来回复
  • 不及物动词的头像
    不及物动词
    这个人很懒,什么都没有留下~
    评论

    在Linux中,要使命令在后台执行,有几种不同的方法可以实现。

    1. 使用 & 符号

    在命令的末尾加上 & 符号,可以使命令在后台执行。例如:

    “`
    $ command &
    “`

    这样,命令就会在后台运行,不会阻塞当前的终端。

    2. 使用 nohup 命令

    nohup 命令可以使命令在后台运行,即使关闭终端,命令也能继续执行。使用该命令的格式如下:

    “`
    $ nohup command &
    “`

    例如,要在后台运行一个叫做 myscript.sh 的 shell 脚本,可以使用以下命令:

    “`
    $ nohup ./myscript.sh &
    “`

    3. 使用 disown 命令

    disown 命令可以将一个已经在后台运行的任务与当前终端分离。要使用 disown 命令,首先要将任务发送到后台,然后使用 jobs 命令查看任务的 JOB ID,最后使用 disown 命令与任务的 JOB ID 进行绑定。

    例如,假设任务的 JOB ID 是 1,可以使用以下命令将其与当前终端分离:

    “`
    $ bg %1 # 将任务发送到后台
    $ disown %1 # 将任务与当前终端分离
    “`

    4. 使用 screen 命令

    screen 命令可以创建一个虚拟终端会话,通过该会话可以在后台执行命令。首先要安装 screen,然后使用以下命令创建一个新的 screen 会话:

    “`
    $ screen
    “`

    在 screen 会话中,可以执行任意命令。要将会话切换到后台,可以按下 Ctrl + A,然后按下 D 键。即可将会话切换到后台。

    以上是在Linux中使命令在后台执行的几种方法,根据实际需要选择适合的方法即可。

    2年前 0条评论
  • worktile的头像
    worktile
    Worktile官方账号
    评论

    在Linux中,可以使用以下方法将命令在后台执行:

    1. 使用&符号:在命令最后加上&符号,表示将该命令放入后台执行。例如:
    “`
    $ command &
    “`
    这样命令就会在后台执行,终端会立即返回,可以继续输入其他命令。

    2. 使用nohup命令:nohup命令可以让命令在后台执行,并忽略终端断开的信号。使用方法如下:
    “`
    $ nohup command &
    “`
    执行后,命令将在后台运行,不受终端关闭的影响。输出会被重定向到nohup.out文件。

    3. 使用tmux或screen:tmux和screen是Linux下的终端复用工具,可以在一个终端窗口中创建多个会话,并在后台执行命令。使用方法如下:
    安装tmux或screen:
    “`
    $ sudo apt install tmux
    “`

    “`
    $ sudo apt install screen
    “`
    启动tmux或screen:
    “`
    $ tmux
    “`

    “`
    $ screen
    “`
    在tmux或screen中创建一个新窗口:
    “`
    Ctrl + b,然后按下c键
    “`

    “`
    Ctrl + a,然后按下c键
    “`
    在新窗口中执行命令,并切换回原始窗口:
    “`
    Ctrl + b,然后按下d键
    “`

    “`
    Ctrl + a,然后按下d键
    “`
    要返回到后台运行的命令窗口,可以使用以下命令:
    “`
    $ tmux attach
    “`

    “`
    $ screen -r
    “`

    4. 使用后台运行命令管理工具(如systemd):在某些Linux系统中,可以使用后台运行命令管理工具,如systemd。该工具可以让命令以服务的方式在后台运行,并在系统启动时自动启动。使用方法请参考相关文档。

    5. 使用at或batch命令:at命令可以安排在指定时间执行命令,而batch命令可以在系统负载较低时执行命令。两者都可以让命令在后台执行。使用方法如下:
    at命令:
    “`
    $ at now + 1 minute
    at> command
    at> Ctrl + d
    “`
    batch命令:
    “`
    $ batch
    batch> command
    batch> Ctrl + d
    “`
    以上是一些常用的将命令在后台执行的方法。根据实际需求选择适合的方法,并根据具体的命令和环境进行调整。

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

    要在Linux中使命令在后台执行,可以使用以下几种方法:

    1. 在命令后添加 “&” 符号
    在命令的末尾添加 “&” 符号,就可以将该命令放入后台执行。例如:
    “`
    $ command &
    “`
    当命令开始执行后,它将在后台运行,而不会阻塞当前终端。

    2. 使用nohup命令
    nohup命令可以在命令执行过程中忽略所有的挂起信号,并将命令放入后台执行。例如:
    “`
    $ nohup command &
    “`
    执行后,命令将在后台一直运行,而不受终端关闭或断开的影响。命令的输出将默认重定向到一个名为”nohup.out”的文件中。

    3. 使用screen命令
    使用screen命令可以创建一个虚拟终端会话,并在会话中执行命令。这样即使终端关闭或断开,命令也会继续在后台运行。以下是screen命令的基本使用方法:
    “`
    $ screen -S session_name command
    “`
    其中,”session_name”是会话的名称,可以自定义。执行命令后,会话将保持活动状态,即使关闭当前终端也不会影响到会话中的命令。要重新连接到会话,可以使用以下命令:
    “`
    $ screen -r session_name
    “`
    使用Ctrl + A,然后按下D键可以从会话中断开,但不会停止会话中的命令。

    4. 使用tmux命令
    类似于screen,tmux也是一个虚拟终端会话管理器。以下是tmux命令的基本使用方法:
    “`
    $ tmux new-session -s session_name command
    “`
    执行命令后,会话将保持活动状态。要重新连接到会话,可以使用以下命令:
    “`
    $ tmux attach -t session_name
    “`
    使用Ctrl + B,然后按下D键可以从会话中断开,但不会停止会话中的命令。

    这些方法可以帮助你在Linux中将命令放入后台执行,以便在终端关闭或断开的情况下继续运行。选择适合你的方法,并根据实际需求来使用。

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

400-800-1024

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

分享本页
返回顶部