summaryrefslogtreecommitdiffstats
path: root/usr.bin/sed
diff options
context:
space:
mode:
authorpfg <pfg@FreeBSD.org>2014-06-20 21:41:30 +0000
committerpfg <pfg@FreeBSD.org>2014-06-20 21:41:30 +0000
commit49152e1559083ac8f77aa5ab1257bdc5afa86db8 (patch)
tree2f9affbc4555f2a55443f6e07742a8776d82c443 /usr.bin/sed
parent34998088693f267781e5c3f7fdafde838fd65cce (diff)
downloadFreeBSD-src-49152e1559083ac8f77aa5ab1257bdc5afa86db8.zip
FreeBSD-src-49152e1559083ac8f77aa5ab1257bdc5afa86db8.tar.gz
Add -u (unbuffered output) after GNU sed.
Obtained from: NetBSD MFC after: 1 week
Diffstat (limited to 'usr.bin/sed')
-rw-r--r--usr.bin/sed/main.c19
-rw-r--r--usr.bin/sed/sed.16
2 files changed, 19 insertions, 6 deletions
diff --git a/usr.bin/sed/main.c b/usr.bin/sed/main.c
index 2062c68..4724e25 100644
--- a/usr.bin/sed/main.c
+++ b/usr.bin/sed/main.c
@@ -132,7 +132,7 @@ main(int argc, char *argv[])
fflag = 0;
inplace = NULL;
- while ((c = getopt(argc, argv, "EI:ae:f:i:lnr")) != -1)
+ while ((c = getopt(argc, argv, "EI:ae:f:i:lnru")) != -1)
switch (c) {
case 'r': /* Gnu sed compat */
case 'E':
@@ -168,6 +168,16 @@ main(int argc, char *argv[])
case 'n':
nflag = 1;
break;
+ case 'u':
+#ifdef _IONBF
+ c = setvbuf(stdout, NULL, _IONBF, 0);
+#else
+ c = -1;
+ errno = EOPNOTSUPP;
+#endif
+ if (c)
+ warnx("setting unbuffered output failed");
+ break;
default:
case '?':
usage();
@@ -199,9 +209,10 @@ main(int argc, char *argv[])
static void
usage(void)
{
- (void)fprintf(stderr, "%s\n%s\n",
- "usage: sed script [-Ealn] [-i extension] [file ...]",
- " sed [-Ealn] [-i extension] [-e script] ... [-f script_file] ... [file ...]");
+ (void)fprintf(stderr,
+ "usage: %s script [-Ealnru] [-i[<extension>]] [file ...]\n"
+ "\t%s [-Ealnu] [-i[<extension>]] [-e script] ... [-f script_file]"
+ " ... [file ...]\n", getprogname(), getprogname());
exit(1);
}
diff --git a/usr.bin/sed/sed.1 b/usr.bin/sed/sed.1
index cf27496..277535e 100644
--- a/usr.bin/sed/sed.1
+++ b/usr.bin/sed/sed.1
@@ -31,7 +31,7 @@
.\" @(#)sed.1 8.2 (Berkeley) 12/30/93
.\" $FreeBSD$
.\"
-.Dd December 9, 2013
+.Dd June 20, 2014
.Dt SED 1
.Os
.Sh NAME
@@ -39,7 +39,7 @@
.Nd stream editor
.Sh SYNOPSIS
.Nm
-.Op Fl Ealnr
+.Op Fl Ealnru
.Ar command
.Op Ar
.Nm
@@ -148,6 +148,8 @@ option suppresses this behavior.
Same as
.Fl E
for compatibility with GNU sed.
+.It Fl u
+Make output unbuffered.
.El
.Pp
The form of a
OpenPOWER on IntegriCloud