dj(1), dj.1: remove the unnecessary -d and -q
This commit is contained in:
parent
4b3333d8d3
commit
d3f5246242
29
docs/dj.1
29
docs/dj.1
@ -11,7 +11,7 @@ dj \(en disk jockey
|
|||||||
.SH SYNOPSIS
|
.SH SYNOPSIS
|
||||||
|
|
||||||
dj
|
dj
|
||||||
.RB ( -AdHnq )
|
.RB ( -AHn )
|
||||||
.RB ( -a
|
.RB ( -a
|
||||||
.RB [ byte ])
|
.RB [ byte ])
|
||||||
.RB ( -c
|
.RB ( -c
|
||||||
@ -76,18 +76,11 @@ with a null byte instead of a character.
|
|||||||
.IP \fB-c\fP
|
.IP \fB-c\fP
|
||||||
Specifies a number of reads to make. The default is 0, in which case the
|
Specifies a number of reads to make. The default is 0, in which case the
|
||||||
input is read until a partial or empty read is made.
|
input is read until a partial or empty read is made.
|
||||||
.IP \fB-d\fP
|
|
||||||
Prints invocation information before program execution as described in the
|
|
||||||
DIAGNOSTICS section. Each invocation increments the debug level of the
|
|
||||||
program.
|
|
||||||
.IP \fB-H\fP
|
.IP \fB-H\fP
|
||||||
Prints diagnostics messages in a human-readable manner as described in the
|
Prints diagnostics messages in a human-readable manner as described in the
|
||||||
DIAGNOSTICS section.
|
DIAGNOSTICS section.
|
||||||
.IP \fB-n\fP
|
.IP \fB-n\fP
|
||||||
Retries failed reads once before exiting.
|
Retries failed reads once before exiting.
|
||||||
.IP \fB-q\fP
|
|
||||||
Suppresses error messages which print when a read or write is partial or
|
|
||||||
empty. Each invocation decrements the debug level of the program.
|
|
||||||
.\"
|
.\"
|
||||||
.SH STANDARD INPUT
|
.SH STANDARD INPUT
|
||||||
|
|
||||||
@ -100,10 +93,8 @@ one or more of the input files is \(lq-\(rq.
|
|||||||
.\"
|
.\"
|
||||||
.SH DIAGNOSTICS
|
.SH DIAGNOSTICS
|
||||||
|
|
||||||
On a partial or empty read, unless the
|
On a partial or empty read a diagnostic message is printed. Then, the program
|
||||||
.B -q
|
exits unless the
|
||||||
option is specified, a diagnostic message is printed. Then, the program exits
|
|
||||||
unless the
|
|
||||||
.B -n
|
.B -n
|
||||||
option is specified.
|
option is specified.
|
||||||
|
|
||||||
@ -128,20 +119,6 @@ option may be specified. In this event, the following format is used instead:
|
|||||||
{ASCII line feed}
|
{ASCII line feed}
|
||||||
.RE
|
.RE
|
||||||
|
|
||||||
If the
|
|
||||||
.B -d
|
|
||||||
option is specified, debug information will be printed at the beginning of
|
|
||||||
execution. This output contains information regarding how the program was
|
|
||||||
invoked. The following example is the result of running the program with
|
|
||||||
.B -d
|
|
||||||
as the only argument:
|
|
||||||
|
|
||||||
.RS
|
|
||||||
argv0=dj
|
|
||||||
in=<stdin> ibs=1024 skip=0 align=ff count=0
|
|
||||||
out=<stdout> obs=1024 seek=0 debug= 3 noerror=0
|
|
||||||
.RE
|
|
||||||
|
|
||||||
In non-recoverable errors that don\(cqt pertain to the read-write cycle, a
|
In non-recoverable errors that don\(cqt pertain to the read-write cycle, a
|
||||||
diagnostic message is printed and the program exits with the appropriate
|
diagnostic message is printed and the program exits with the appropriate
|
||||||
.BR sysexits.h (3)
|
.BR sysexits.h (3)
|
||||||
|
27
src/dj.c
27
src/dj.c
@ -59,14 +59,6 @@ struct Io{
|
|||||||
/* pointer to chosen formatting */
|
/* pointer to chosen formatting */
|
||||||
/* (-H) */ static char *fmt_output; /* fmt_asv (default) or fmt_human (-H) */
|
/* (-H) */ static char *fmt_output; /* fmt_asv (default) or fmt_human (-H) */
|
||||||
|
|
||||||
/* (-dq) */ static char debug; /*
|
|
||||||
* -d increments dj -qq | 0 - no diagnostic output whatsoever
|
|
||||||
* -q decrements dj -q | 1 - typical output without
|
|
||||||
* | notifications on partial reads or
|
|
||||||
* | writes
|
|
||||||
* dj | 2 - typical output (default)
|
|
||||||
* dj -d | 3 - verbose status messages */
|
|
||||||
|
|
||||||
/* (-n) */ static char noerror; /* 0 - exits on partial reads or writes
|
/* (-n) */ static char noerror; /* 0 - exits on partial reads or writes
|
||||||
* (default)
|
* (default)
|
||||||
* 1 - retries on partial reads/writes
|
* 1 - retries on partial reads/writes
|
||||||
@ -84,7 +76,6 @@ static int write_flags = O_WRONLY | O_CREAT; /* dd(1). */
|
|||||||
#define setdefaults do{ \
|
#define setdefaults do{ \
|
||||||
align = -1; \
|
align = -1; \
|
||||||
count = 0; \
|
count = 0; \
|
||||||
debug = 2; \
|
|
||||||
fmt_output = fmt_asv; \
|
fmt_output = fmt_asv; \
|
||||||
noerror = 0; \
|
noerror = 0; \
|
||||||
ep[0].fl = read_flags; \
|
ep[0].fl = read_flags; \
|
||||||
@ -284,11 +275,10 @@ oserr(char *s){
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* Prints statistics regarding the use of dj, particularly partially and
|
/* Prints statistics regarding the use of dj, particularly partially and
|
||||||
* completely read and written records, accessing debug, ep, and fmt_output. */
|
* completely read and written records, accessing ep and fmt_output. */
|
||||||
static void
|
static void
|
||||||
output(void){
|
output(void){
|
||||||
|
|
||||||
if(debug >= 1)
|
|
||||||
fprintf(stderr, fmt_output,
|
fprintf(stderr, fmt_output,
|
||||||
ep[0].rec, ep[0].prec, ep[1].rec, ep[1].prec,
|
ep[0].rec, ep[0].prec, ep[1].rec, ep[1].prec,
|
||||||
ep[0].bytes, ep[1].bytes);
|
ep[0].bytes, ep[1].bytes);
|
||||||
@ -342,10 +332,8 @@ int main(int argc, char *argv[]){
|
|||||||
terminate(ep);
|
terminate(ep);
|
||||||
return oserr(optarg);
|
return oserr(optarg);
|
||||||
case 'A': align = '\0'; break;
|
case 'A': align = '\0'; break;
|
||||||
case 'd': ++debug; break;
|
|
||||||
case 'n': noerror = 1; break;
|
case 'n': noerror = 1; break;
|
||||||
case 'H': fmt_output = fmt_human; break;
|
case 'H': fmt_output = fmt_human; break;
|
||||||
case 'q': --debug; break;
|
|
||||||
case 'a':
|
case 'a':
|
||||||
if(optarg[0] != '\0' && optarg[1] == '\0'){
|
if(optarg[0] != '\0' && optarg[1] == '\0'){
|
||||||
align = optarg[0];
|
align = optarg[0];
|
||||||
@ -367,15 +355,6 @@ int main(int argc, char *argv[]){
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
if(debug >= 3)
|
|
||||||
fprintf(stderr,
|
|
||||||
"argv0=%s\n"
|
|
||||||
"in=%s\tibs=%d\tskip=%ld\talign=%hhx\tcount=%d\n"
|
|
||||||
"out=%s\tobs=%d\tseek=%ld\tdebug=%2d\tnoerror=%d\n",
|
|
||||||
program_name,
|
|
||||||
ep[0].fn, ep[0].bs, ep[0].seek, align, count,
|
|
||||||
ep[1].fn, ep[1].bs, ep[1].seek, debug, noerror);
|
|
||||||
|
|
||||||
if(argc > optind){
|
if(argc > optind){
|
||||||
terminate(ep);
|
terminate(ep);
|
||||||
return usage();
|
return usage();
|
||||||
@ -404,10 +383,8 @@ int main(int argc, char *argv[]){
|
|||||||
break;
|
break;
|
||||||
else if(ep[0].bufuse < ep[0].bs){
|
else if(ep[0].bufuse < ep[0].bs){
|
||||||
++ep[0].prec;
|
++ep[0].prec;
|
||||||
if(debug >= 2){
|
|
||||||
fprintf(stderr, "%s: Partial read:\n\t", program_name);
|
fprintf(stderr, "%s: Partial read:\n\t", program_name);
|
||||||
output();
|
output();
|
||||||
}
|
|
||||||
if(!noerror)
|
if(!noerror)
|
||||||
count = 1;
|
count = 1;
|
||||||
if(align >= 0)
|
if(align >= 0)
|
||||||
@ -432,10 +409,8 @@ int main(int argc, char *argv[]){
|
|||||||
break;
|
break;
|
||||||
}else if(c > ep[1].bufuse && ep[1].bufuse > 0){
|
}else if(c > ep[1].bufuse && ep[1].bufuse > 0){
|
||||||
ep[1].prec += 1;
|
ep[1].prec += 1;
|
||||||
if(debug >= 2){
|
|
||||||
fprintf(stderr, "%s: Partial write:\n\t", program_name);
|
fprintf(stderr, "%s: Partial write:\n\t", program_name);
|
||||||
output();
|
output();
|
||||||
}
|
|
||||||
if(!noerror)
|
if(!noerror)
|
||||||
count = 1;
|
count = 1;
|
||||||
}else if(ep[1].bufuse == 0 && c < ep[1].bs)
|
}else if(ep[1].bufuse == 0 && c < ep[1].bs)
|
||||||
|
Loading…
Reference in New Issue
Block a user