run a shell script and immediately background it, however keep the ability to inspect its output

前端 未结 2 1043
我寻月下人不归
我寻月下人不归 2020-12-02 14:35

How can I run a shell script and immediately background it, however keep the ability to inspect its output any time by tailing /tmp/output.txt

It would be nice if I

相关标签:
2条回答
  • 2020-12-02 14:58

    To 'background' a process when you start it

    Simply add an ampersand (&) after the command.

    If the program writes to standard out, it will still write to your console/terminal.

    To foreground the process, simply use the fg command.

    (You can see a list of jobs in the background with jobs.)

    for example:

    sh -c 'sleep 3 && echo I just woke up' & jobs

    To background a currently running process

    If you have already started the process in the foreground, but you want to move it to the background, you can do the following:

    1. Press Ctrl+z to put the current process to sleep and return to your shell. (This process will be paused until you send it another signal.)
    2. Run the bg command to resume the process, but have it run in the background instead of the foreground.
    0 讨论(0)
  • 2020-12-02 15:03

    Another way is using the nohup command with & at the end of the line.

    Something like this

    nohup whatevercommandyouwant whateverparameters &
    

    This will run it in the background and send its output to a nohup.log file.

    0 讨论(0)
提交回复
热议问题