/* parse arguments of read command */ static int runread(int argc, char **argv){ char *path = NULL; bool mt = false; int omode = 0; bool wb = false; bool rnd = false; for(int i = 2; i < argc; i++){ if(!path && argv[i][0] == '-'){ if(!strcmp(argv[i], "-mt")){ mt = true; } else if(!strcmp(argv[i], "-nl")){ omode |= FDBONOLCK; } else if(!strcmp(argv[i], "-nb")){ omode |= FDBOLCKNB; } else if(!strcmp(argv[i], "-wb")){ wb = true; } else if(!strcmp(argv[i], "-rnd")){ rnd = true; } else { usage(); } } else if(!path){ path = argv[i]; } else { usage(); } } if(!path) usage(); int rv = procread(path, mt, omode, wb, rnd); return rv; }
/* parse arguments of read command */ static int runread(int argc, char **argv){ char *path = NULL; char *tstr = NULL; int omode = 0; bool wb = false; bool rnd = false; for(int i = 2; i < argc; i++){ if(!path && argv[i][0] == '-'){ if(!strcmp(argv[i], "-nl")){ omode |= FDBONOLCK; } else if(!strcmp(argv[i], "-nb")){ omode |= FDBOLCKNB; } else if(!strcmp(argv[i], "-wb")){ wb = true; } else if(!strcmp(argv[i], "-rnd")){ rnd = true; } else { usage(); } } else if(!path){ path = argv[i]; } else if(!tstr){ tstr = argv[i]; } else { usage(); } } if(!path || !tstr) usage(); int tnum = tcatoix(tstr); if(tnum < 1) usage(); int rv = procread(path, tnum, omode, wb, rnd); return rv; }
/* parse arguments of read command */ static int runread(int argc, char **argv){ char *name = NULL; char *tstr = NULL; for(int i = 2; i < argc; i++){ if(!name && argv[i][0] == '-'){ usage(); } else if(!name){ name = argv[i]; } else if(!tstr){ tstr = argv[i]; } else { usage(); } } if(!name || !tstr) usage(); int tnum = tcatoix(tstr); if(tnum < 1) usage(); int rv = procread(name, tnum); return rv; }