4 ms·
Cult of pv. It looks to have more command-line complexity than dd. https://linux.die.net/man/1/pv https://linux.die.net/man/1/pv
by donaldihunter 10y ago
Cult of pv. It looks to have more command-line complexity than dd. https://linux.die.net/man/1/pv https://linux.die.net/man/1/pv
- merlincorey 10y agoThis is a good point as well. On BSD, we don't have `pv`, but we do have ^T. This will print some sort of status for just about any long running process. It prints very specialized status for certain programs aware of it.
- emmelaich 10y agoNice! MacOS has it too (unsurprisingly) Linux, not. I wonder why.
- schoen 10y agoHuh, I never knew about this. It looks like Linux doesn't define SIGINFO, which is what the terminal driver would generate in response to the ^T.
- yjftsjthsd-h 10y agoYou're not the first to wonder: https://unix.stackexchange.com/questions/179481/siginfo-on-gnu-linux-arch-linux-missing https://unix.stackexchange.com/questions/179481/siginfo-on-g... But it looks like the answer is just "it was complicated to implement so Linux didn't add it."
- tambourine_man 10y agoYou made my day sir
- GalacticDomin8r 10y agopv is available on at least FreeBSD as a package like it is in Linux. I'd be quite shocked if the other BSD's didn't have a port of it as well. There is also mbuffer. SIGINFO works on gnu dd last I tried it.
- floatboth 10y agoYeah, it's just that Linux doesn't even define SIGINFO
- sillysaurus3 10y agopv is probably more useful: $ dd if=/dev/urandom count=1000 bs=1000000 | pv -s 1000000000 > foo 214MiB 0:00:16 [13.1MiB/s] [========================> ] 22% ETA 0:00:55 Compare to ^T: $ dd if=/dev/urandom of=foo count=1000 bs=1000000 load: 1.76 cmd: dd 80097 running 0.00u 0.89s 11+0 records in 11+0 records out 11000000 bytes transferred in 0.947316 secs (11611752 bytes/sec) load: 1.76 cmd: dd 80097 running 0.00u 1.68s 22+0 records in 22+0 records out 22000000 bytes transferred in 1.746013 secs (12600134 bytes/sec) load: 1.76 cmd: dd 80097 running 0.00u 2.28s 31+0 records in 31+0 records out 31000000 bytes transferred in 2.392392 secs (12957742 bytes/sec) load: 1.76 cmd: dd 80097 running 0.00u 2.83s 38+0 records in 38+0 records out ....
- bigbugbag 10y agoWhy not using native dd parameter status=progress ?