Kill

命令 pkill -USR1 -n -x dd 究竟是什麼意思?

  • October 20, 2014

我正在使用dd將磁碟映像網路傳輸到我的 BeagleBone 上的 sd 卡。

pkill -USR1 -n -x dd在與此 BeagleBone 的 ssh 連接中使用可為我提供傳輸過程的狀態更新,這很棒。我只是好奇它實際上是如何工作的,所以我將來可以有效地使用它。

閱讀man pkill後仍然沒有完全解釋如何pkill -USR1 -n -x dd為我提供這個非常有用的狀態更新。

這是特定於 的行為dd。從dd手冊頁:

將 USR1 信號發送到正在執行的“dd”程序使其將 I/O 統計資訊列印到標準錯誤,然後繼續複製。

$ dd if=/dev/zero of=/dev/null& pid=$!
$ kill -USR1 $pid; sleep 1; kill $pid

18335302+0 records in 18335302+0 records out 9387674624 bytes (9.4 GB) copied,  34.6279  seconds, 271 MB/s

-USR1告訴pkill 發送USR1信號。-n並且-x只是過濾器以確保您發送到正確的程序(-n發送到最新的程序並且-x意味著該程序必須準確命名dd

引用自:https://unix.stackexchange.com/questions/163060