It only updates the log when I press Ctlt in the first terminal with the dd. Is this because of the nature of dd?
Yes. It is in the nature of dd
to output its current status when it receives a given signal. Under most OSes, this signal is SIGUSR1
, a standard signal but on OS X, it uses for the same a non standard signal named SIGINFO
. Moreover, OS X has a tty
driver setting that allows to send that specific signal with a key combination, CtrlT, just like CtrlC sends SIGQUIT
on all OSes.
I don't know exactly how it writes to devices, but could it be too demanding for the process to take a break and write to the log?
You are precisely asking it to do that with the shortcut. Should you want to have regular automatic updates, nothing forbids you to do a simple shell loop like that one:
while kill -INFO $(pgrep dd); do sleep 5; done
This assumes pgrep
is available on OS X. Otherwise, pick the pid
of your dd
command and use it as kill
second argument.