nohup 和 & 的區別

nohup 的定義

man nohup
nohup - run a command immune to hangups, with output to a non-tty

運行一條命令,對掛起免疫,輸出到非tty。html

& 的特色

  1. 當前任務會放在後臺進行(ctrl c不會終止)
  2. 若是有輸出會看到輸出
  3. 一旦退出ssh session,則任務自動中止(使用exit退出)

nohup (No hangups 的縮寫) 的特性

  1. 當前任務運行起來,不能看到輸出日誌,能夠經過nohub.out查看
  2. 使用ctrl c會終止運行
  3. 退出session會保持運行(前提是在運行!)

這下來看,這兩貨各屬陰陽的,沒一個完美的。因而,嘿嘿,來個陰陽合體。session

//默認把標準輸出重定向追加到文件 nohup.out
nohup COMMAND &
nohup COMMAND > /path/to/my.log 2>&1 &

大功告成。ssh

參考資料

//查看當前終端發起的正在運行的後臺進程
jobs -l

ps -ef
ps -aux | grep ./tt
// a:顯示全部程序 
// u:以用戶爲主的格式來顯示 
// x:顯示全部程序,不以終端機來區分
// 用ps -def | grep查找進程很方便,最後一行老是會grep本身
// 用grep -v參數能夠將grep命令排除掉
ps -aux | grep ./tt | grep -v grep
// 再用awk提取一下進程ID
ps -aux | grep ./tt | grep -v grep | awk '{print $2}'

// 查看使用某端口的進程
lsof -i:8080
netstat -ap | grep 8080
//查看到進程id以後,使用netstat命令查看其佔用的端口
netstat -nap | grep 7779
//使用kill殺掉進城後再啓動
kill -9  進程號
相關文章
相關標籤/搜索