ref: 639f9e8de7ad75f1c985d2cec2ef8b39b3d73070
dir: /sys/src/cmd/aux/zerotrunc.c/
/* * cat standard input until you get a zero byte */ #include <u.h> #include <libc.h> void main(void) { char buf[4096]; char *p; int n; while((n = read(0, buf, sizeof(buf))) > 0){ p = memchr(buf, 0, n); if(p != nil) n = p-buf; if(n > 0) write(1, buf, n); if(p != nil) break; } exits(0); }