cstream
general-purpose stream-handling tool similar to dd
Install
- All systems
-
curl cmd.cat/cstream.sh
- Debian
-
apt-get install cstream
- Ubuntu
-
apt-get install cstream
- Kali Linux
-
apt-get install cstream
- Fedora
-
dnf install cstream
- Windows (WSL2)
-
sudo apt-get update
sudo apt-get install cstream
- Raspbian
-
apt-get install cstream
- Dockerfile
- dockerfile.run/cstream
cstream
general-purpose stream-handling tool similar to dd
cstream is a general-purpose stream-handling tool like UNIX' dd, usually used in commandline-constructed pipes. Features: - Sane commandline switch syntax. - Exact throughput limiting, on the incoming side. Timing variance in previous reads are counterbalanced in the following reads. - Precise throughput reporting. Either at the end of the transmission or everytime SIGUSR1 is received. Quite useful to ask lengthy operations how much data has been transferred yet, i.e. when writing tapes. Reports are done in bytes/sec and if appropriate in KB/sec or MB/sec, where 1K = 1024. - SIGUSR2 causes a clean shutdown before EOF on input, timing information is displayed. - Build-in support to write its PID to a file, for painless sending of these signals. - Build-in support for fifos. Example usage is a 'pseudo-device', something that sinks or delivers data at an appropriate rate, but looks like a file, i.e. if you test soundcard software. See the manpage for examples. - Built-in data creation and sink, no more redirection of /dev/null and /dev/zero. These special devices speed varies greatly among operating systems, redirecting from it isn't appropriate benchmarking and a waste of resources anyway. - Accepts 'k', 'm' and 'g' character after number for "kilo, mega, giga" bytes for overall data size limit. - "gcc -Wall" clean source code, serious effort taken to avoid undefined behaviour in ANSI C or POSIX, except long long is required. Limiting and reporting works on data amounts > 4 GB.