stest: restore stream testing

master
Connor Lane Smith 13 years ago
parent 32ef0f5662
commit 6b1d658d12
  1. 3
      stest.1
  2. 9
      stest.c

@ -13,7 +13,8 @@ stest \- filter a list of files by properties
.B stest
takes a list of files and filters by the files' properties, analogous to
.IR test (1).
Files which pass all tests are printed to stdout.
Files which pass all tests are printed to stdout. If no files are given, stest
reads files from stdin.
.SH OPTIONS
.TP
.B \-a

@ -3,6 +3,7 @@
#include <stdbool.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <unistd.h>
#include <sys/stat.h>
@ -17,7 +18,7 @@ static struct stat old, new;
int
main(int argc, char *argv[]) {
struct dirent *d;
char buf[BUFSIZ];
char buf[BUFSIZ], *p;
DIR *dir;
int opt;
@ -35,6 +36,12 @@ main(int argc, char *argv[]) {
fprintf(stderr, "usage: %s [-abcdefghlpqrsuwx] [-n file] [-o file] [file...]\n", argv[0]);
exit(2);
}
if(optind == argc)
while(fgets(buf, sizeof buf, stdin)) {
if((p = strchr(buf, '\n')))
*p = '\0';
test(buf, buf);
}
for(; optind < argc; optind++)
if(FLAG('l') && (dir = opendir(argv[optind]))) {
/* test directory contents */

Loading…
Cancel
Save