linuxnohup后显示命令行

不及物动词 其他 39

回复

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

    在Linux中使用nohup命令执行后台任务时,默认情况下是不会在命令行中显示输出的。这是因为nohup命令会将输出重定向到一个名为nohup.out的文件中,而不是显示在命令行中。

    如果你希望在命令行中显示nohup命令的输出,可以使用以下方法:

    1. 使用tee命令:tee命令可以将输出同时写入文件和标准输出。你可以通过在nohup命令中使用管道和tee命令将输出发送到终端。例如:
    “`
    nohup your_command 2>&1 | tee -a output.log
    “`
    上述命令中,2>&1将错误输出也重定向到标准输出,而tee命令将标准输出同时写入终端和output.log文件。这样你就可以在命令行中实时看到任务的输出。

    2. 使用tail命令:另一种方法是使用tail命令实时查看nohup.out文件的内容。例如:
    “`
    nohup your_command > nohup.out &
    tail -f nohup.out
    “`
    上述命令中,nohup命令将输出重定向到nohup.out文件,并在后台执行。然后使用tail命令实时查看nohup.out文件的内容,你可以随时查看任务的输出。

    请注意,以上方法仅适用于在nohup命令中没有使用重定向符号的情况。如果你在nohup命令中使用了重定向符号,那么输出将被重定向到指定的文件,而不会显示在命令行中。

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

    使用Linux中的nohup命令来执行一个任务并将其输出显示在命令行界面是不可能的。nohup命令的设计目的是在后台运行一个进程,并使其脱离终端的控制。当终端关闭后,该进程仍然能够继续运行,因此该命令没有提供在命令行界面上显示输出的选项。

    然而,你可以通过其他的方式来实现在命令行界面上显示某个任务的输出。下面是五种常用的方法:

    1. 使用重定向操作符:在执行任务的命令后添加`&> output.txt`或`> output.txt`,将任务的输出重定向到一个文件中。然后使用`tail -f output.txt`命令来实时查看该文件的最新内容。

    2. 使用tmux或screen会话:tmux和screen是两个功能强大的终端复用工具,它们允许你创建多个终端会话并在后台进行操作。你可以将任务启动在一个tmux或screen会话中,并随时切换到该会话来查看任务的输出。

    3. 使用tee命令:将任务的输出同时重定向到文件和标准输出,可以使用`command | tee output.txt`的方式运行任务。这样,任务的输出将会同时显示在命令行界面上和保存到文件中。

    4. 使用tail命令实时监视日志文件:如果任务将输出写入日志文件中,你可以使用`tail -f log.txt`命令来实时查看最新的日志内容。

    5. 使用命令的进程ID(PID)来查看输出:首先运行任务,然后使用`ps aux | grep command`命令来查找任务的进程ID。随后,使用`tail -f /proc/[PID]/fd/1`命令来实时查看该进程的输出。

    通过以上方法,你可以实时查看任务的输出,并在命令行界面上进行监控和操作。

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

    在Linux中使用nohup命令可以在系统关闭终端后继续运行程序。当使用nohup命令运行程序时,通常会将程序的输出重定向到一个文件中,而不是显示在命令行上。然而,如果你仍然希望能够在运行程序的同时,在命令行上看到输出,可以使用一些其他的方法来实现。

    下面是一种常用的方法,在使用nohup命令后仍然在命令行上显示程序输出的方法。
    1. 使用nohup命令启动程序,并将输出重定向到一个文件中。
    “`
    $ nohup command > output.txt &
    “`
    其中command是要运行的程序,output.txt是设置的输出文件名。

    2. 使用tail命令监视输出文件的内容,并将其输出到命令行上。
    “`
    $ tail -f output.txt
    “`
    -f选项可以实时监视文件的内容,并将其输出到命令行上。这样就可以在命令行上看到程序的输出。

    为了方便使用,你可以将上述两个命令组合成一个shell脚本,以便更方便地启动程序并显示输出。

    下面是一个示例的脚本内容。
    “`
    #!/bin/bash
    nohup command > output.txt &
    tail -f output.txt
    “`
    将上述内容保存为一个脚本文件(例如start.sh),然后在命令行中运行脚本即可。
    “`
    $ chmod +x start.sh
    $ ./start.sh
    “`

    这样就可以同时启动程序并在命令行上显示输出了。

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

400-800-1024

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

分享本页
返回顶部