后台运行linux命令

fiy 其他 169

回复

共3条回复 我来回复
  • fiy的头像
    fiy
    Worktile&PingCode市场小伙伴
    评论

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

    1. 使用“&”符号:
    可以在命令的末尾使用 “&” 符号来让命令在后台运行。例如,如果要在后台运行一个长时间执行的命令,可以这样输入:
    “`
    command &
    “`
    这样命令就会在后台运行,而你可以继续使用终端执行其他命令。

    2. 使用nohup命令:
    nohup命令可以在命令前加上nohup来让命令在后台运行,并且不会受到终端关闭的影响。语法如下:
    “`
    nohup command &
    “`
    例如,如果要后台运行一个名为run.sh的脚本,可以这样输入:
    “`
    nohup ./run.sh &
    “`
    这样脚本就会在后台运行,即使你关闭了终端也不会受到影响。

    3. 使用screen命令:
    screen是一个终端复用程序,可以在一个终端中同时运行多个会话。你可以使用screen命令创建一个会话,并在会话中运行命令。例如:
    “`
    screen -S session_name
    “`
    然后,你可以在会话中运行任意命令,并且可以在不同的会话间切换。当你想要回到之前的会话时,可以使用以下命令:
    “`
    screen -r session_name
    “`
    这样就可以回到之前的会话,继续在后台运行命令。

    无论使用哪种方法,在后台运行命令时,你可以使用ps命令来查看正在运行的进程。例如,可以使用以下命令查看所有正在运行的进程:
    “`
    ps -ef
    “`
    这样就可以确定你想后台运行的命令是否在运行。

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

    在Linux系统中,可以使用nohup命令让某个命令在后台运行,即使当前的终端会话被关闭。下面介绍如何在Linux中后台运行命令的几种方法。

    1. 使用nohup命令
    nohup命令用于在后台运行命令,并且忽略所有的挂起信号。使用nohup命令的语法如下:
    “`
    nohup command [args] &
    “`
    通过在命令末尾加上一个“&”符号,可以将该命令置于后台运行。例如,要在后台运行一个长时间运行的shell脚本:
    “`
    nohup ./script.sh &
    “`
    nohup命令会将输出重定向到一个名为nohup.out的文件中,该文件位于当前目录下。如果要将输出重定向到其他文件中,可以使用重定向操作符”>”:
    “`
    nohup ./script.sh > output.txt &
    “`
    使用nohup命令后,即使关闭当前的终端会话,命令也将继续在后台运行。

    2. 使用screen命令
    screen是一个终端复用器,它可以在单个终端窗口中创建多个虚拟终端会话,每个会话都可以独立运行命令。通过使用screen命令,可以在后台运行命令,并且可以在需要时重新连接到该会话。
    要在后台运行命令,首先启动一个新的screen会话:
    “`
    screen
    “`
    然后,在新的会话中运行需要后台运行的命令,例如:
    “`
    ./script.sh
    “`
    按下Ctrl+A,然后按下d键离开该会话。命令将继续在后台运行,而你可以返回到原来的终端窗口继续其他操作。
    要恢复到之前的screen会话,可以使用以下命令:
    “`
    screen -r
    “`
    这将重新连接到之前的screen会话。

    3. 使用tmux命令
    tmux是类似于screen的终端复用器,它也可以在单个终端窗口中创建多个虚拟终端会话。通过使用tmux命令,可以在后台运行命令,并且可以在需要时重新连接到该会话。
    要在后台运行命令,首先启动一个新的tmux会话:
    “`
    tmux new -s session-name
    “`
    然后,在新的会话中运行需要后台运行的命令,例如:
    “`
    ./script.sh
    “`
    按下Ctrl+B,然后按下d键离开该会话。命令将继续在后台运行,而你可以返回到原来的终端窗口继续其他操作。
    要恢复到之前的tmux会话,可以使用以下命令:
    “`
    tmux attach -t session-name
    “`
    这将重新连接到之前的tmux会话。

    4. 使用后台运行符号”&”
    在Linux中,可以使用后台运行符号”&”来将命令置于后台运行。例如:
    “`
    ./script.sh &
    “`
    该命令将会在后台运行,且不会将输出重定向到任何文件中。
    请注意,如果在后台运行的命令需要从终端读取输入,则可能会导致问题。在这种情况下,建议使用nohup、screen或tmux等工具来确保命令的正确运行。

    5. 使用bg命令和Ctrl+Z组合键
    在终端中,可以使用bg命令和Ctrl+Z组合键将当前正在运行的命令转移到后台运行。
    首先,按下Ctrl+Z将当前正在运行的命令挂起,并返回到shell提示符。
    然后,输入bg命令将挂起的命令放到后台运行:
    “`
    bg
    “`
    命令将继续在后台运行,并且终端会话可以继续输入其他命令。
    这种方法适用于单个命令,而不是用于运行长时间运行的脚本或服务。

    总结一下,可以使用nohup、screen、tmux、后台运行符号”&”或bg命令和Ctrl+Z组合键来在Linux中后台运行命令。选择合适的方法取决于具体的需求和个人习惯。

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

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

    1. 使用`nohup`命令
    – `nohup`命令用于忽略挂断信号,将命令置为后台运行,并且将输出重定向到指定文件中。
    – 使用方式:`nohup command > output-file 2>&1 &`
    – 例如,要在后台运行`ls -l`命令并将输出保存到`output.txt`文件中,可以使用命令`nohup ls -l > output.txt 2>&1 &`

    2. 使用`&`符号
    – 在命令后面加上`&`符号,可以将命令置为后台运行。
    – 使用方式:`command &`
    – 例如,要在后台运行`top`命令,可以使用命令`top &`

    3. 使用`screen`命令
    – `screen`命令提供了一个虚拟终端窗口,可以在其中运行命令,并且可以断开连接后重新连接到虚拟窗口继续运行。
    – 使用方式:首先使用命令`screen`创建一个新的虚拟终端窗口,然后在其中运行命令,最后使用命令`Ctrl+A`,然后按下`d`键断开连接。
    – 要重新连接到虚拟窗口,可以使用命令`screen -r`
    – 例如,要在新的虚拟终端窗口中运行`ping http://www.google.com`命令,可以使用以下命令:
    – `screen`,进入新的虚拟终端窗口
    – `ping http://www.google.com`,在虚拟终端窗口中运行命令
    – `Ctrl+A`,然后按下`d`键,断开连接

    无论使用哪种方法,在后台运行的命令会继续在后台执行,即使当前终端窗口关闭或注销。如果需要查看后台运行的命令的输出,可以使用`cat`命令或者将输出重定向到文件中。

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

400-800-1024

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

分享本页
返回顶部