summaryrefslogtreecommitdiff
path: root/usr/src/cmd/file/file.c
diff options
context:
space:
mode:
Diffstat (limited to 'usr/src/cmd/file/file.c')
-rw-r--r--usr/src/cmd/file/file.c21
1 files changed, 14 insertions, 7 deletions
diff --git a/usr/src/cmd/file/file.c b/usr/src/cmd/file/file.c
index 70cb43c005..6c7989d735 100644
--- a/usr/src/cmd/file/file.c
+++ b/usr/src/cmd/file/file.c
@@ -205,6 +205,7 @@ main(int argc, char **argv)
char *p;
int ch;
FILE *fl;
+ int bflg = 0;
int cflg = 0;
int eflg = 0;
int fflg = 0;
@@ -218,7 +219,7 @@ main(int argc, char **argv)
#endif
(void) textdomain(TEXT_DOMAIN);
- while ((ch = getopt(argc, argv, "M:cdf:him:")) != EOF) {
+ while ((ch = getopt(argc, argv, "M:bcdf:him:")) != EOF) {
switch (ch) {
case 'M':
@@ -226,6 +227,10 @@ main(int argc, char **argv)
M_flg++;
break;
+ case 'b':
+ bflg++;
+ break;
+
case 'c':
cflg++;
break;
@@ -288,7 +293,7 @@ main(int argc, char **argv)
if (iflg && (dflg || mflg || M_flg)) {
usage();
}
- if (iflg && cflg) {
+ if ((iflg && cflg) || (cflg && bflg)) {
usage();
}
@@ -409,7 +414,9 @@ main(int argc, char **argv)
p[l - 1] = '\0';
} else
p = argv[optind];
- prf(p); /* print "file_name:<tab>" */
+
+ if (!bflg)
+ prf(p); /* print "file_name:<tab>" */
if (type(p))
tret = 1;
@@ -1645,10 +1652,10 @@ static void
usage(void)
{
(void) fprintf(stderr, gettext(
- "usage: file [-dh] [-M mfile] [-m mfile] [-f ffile] file ...\n"
- " file [-dh] [-M mfile] [-m mfile] -f ffile\n"
- " file -i [-h] [-f ffile] file ...\n"
- " file -i [-h] -f ffile\n"
+ "usage: file [-bdh] [-M mfile] [-m mfile] [-f ffile] file ...\n"
+ " file [-bdh] [-M mfile] [-m mfile] -f ffile\n"
+ " file -i [-bh] [-f ffile] file ...\n"
+ " file -i [-bh] -f ffile\n"
" file -c [-d] [-M mfile] [-m mfile]\n"));
exit(2);
}