Answers:
使用wgetwith -b或时,--background它通过与当前shell断开关联(通过派生子进程并终止父进程)而使其自身成为后台。由于不是将Shell作为异步作业放在后台的外壳,因此当您使用时,它将不会显示为作业。jobs
要wget在外壳中作为异步(后台)作业运行,请使用
wget ... URL &
如果这样做,您可能还需要将输出重定向到某个文件(该文件wget会自动使用-b),或通过重定向到/dev/null或使用-q或丢弃它--quiet。
因为它把自己置于后台。采用&告诉bash把它放到后台,并把它变成工作bash的列表。
背景和作业控制列表不同。Bash将其所有后台进程都放入其作业控制列表中(默认情况下),但是可以在不将其放入列表中的情况下进行后台处理。只有bash可以将作业放在其列表中。
该-bg选项可能有优势(我不知道是什么)。例如ssh,背景选项,在要求输入密码后将其置于背景中。
-bq,即-b和-q,不是-bg。
存在使用pid 31754的进程;如果您键入ps -e |grep 31754 但由于它不是可以再次移动到前台的作业,则Jobs命令不会显示该作业。wget -bq自动将输出发送到后台,而无需选择将其再次移动到前台。
ps有一个-p可用于查询特定PID的选项,或者可以使用pgrep wget。
ps -p 31754