Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

How can I check the version of sed in OS X?

I know if sed is GNU version, version check can be done like

$ sed --version 

But this doesn't work in OS X. How can I do that?

like image 740
tsrrhhh Avatar asked Jun 05 '16 07:06

tsrrhhh


People also ask

What is sed command in Mac?

SED is a stream editor. A stream editor is used to perform basic text transformations on an input stream (a file or input from a pipeline). While in some ways similar to an editor which permits scripted edits, SED works by making only one pass over the input(s), and is consequently more efficient.

Does Macos have sed?

We know that the sed on Mac OS is the POSIX sed, which cannot use many options. On the other hand, GNU sed is very convenient. For example, GNU sed interprets escape sequences like \t , \n , \001 , \x01 , \w , and \b . OSX's sed and POSIX sed only interpret \n (but not in the replacement part of s ).

What is sed in bash?

Sed is a non-interactive line editor. It receives text input, whether from stdin or from a file, performs certain operations on specified lines of the input, one line at a time, then outputs the result to stdout or to a file.


1 Answers

This probably isn't the answer you're looking for, but you can't. Mac OS X sed has no option to show the version number.

There is not even a version number in the binary:

$ strings $(which sed) $FreeBSD: src/usr.bin/sed/compile.c,v 1.28 2005/08/04 10:05:11 dds Exp $ $FreeBSD: src/usr.bin/sed/main.c,v 1.36 2005/05/10 13:40:50 glebius Exp $ $FreeBSD: src/usr.bin/sed/misc.c,v 1.10 2004/08/09 15:29:41 dds Exp $ $FreeBSD: src/usr.bin/sed/process.c,v 1.39 2005/04/09 14:31:41 stefanf Exp $ @(#)PROGRAM:sed  PROJECT:text_cmds-88 malloc %lu: %s: unexpected EOF (pending }'s) 0123456789/\$ %lu: %s: command expected %lu: %s: invalid command code %c %lu: %s: command %c expects up to %d address(es), found %d %lu: %s: unexpected } %lu: %s: extra characters at the end of %c command %lu: %s: command %c expects \ followed by text %lu: %s: extra characters after \ at the end of %c command %lu: %s: filename expected w command read command branch label %lu: %s: empty label %lu: %s: substitute pattern can not be delimited by newline or backslash %lu: %s: unterminated substitute pattern %lu: %s: extra text at the end of a transform command %lu: %s: unterminated regular expression %lu: %s: expected context address realloc %lu: %s: whitespace after %s %lu: %s: duplicate label '%s' %lu: %s: RE error: %s %lu: %s: \ can not be used as a string delimiter %lu: %s: newline can not be used as a string delimiter %lu: %s: unbalanced brackets ([]) bin/sed Unix2003 123456789 %lu: %s: \%c not defined in the RE %lu: %s: unescaped newline inside substitute pattern %lu: %s: unterminated substitute in regular expression %lu: %s: more than one number or 'g' in substitute flags %lu: %s: overflow in the 'N' substitute flag %lu: %s: no wfile specified %lu: %s: bad flag in substitute command: '%c' %lu: %s: transform pattern can not be delimited by newline or backslash %lu: %s: unterminated transform source string %lu: %s: unterminated transform target string %lu: %s: transform strings are not the same length %lu: %s: undefined label '%s' %lu: %s: unused label '%s' Eae:f:i:ln setlinebuf() failed stdout "%s"  ..." -i may not be used with stdin stdin rename() %s: %s %s in-place editing only works for regular files %s: name too long %s/.!%ld!%s %s: %s usage: sed script [-Ealn] [-i extension] [file ...]        sed [-Ealn] [-i extension] [-e script] ... [-f script_file] ... [file ...] first RE may not be empty RE error: %s %lu: %s: \%d not defined in the RE COLUMNS \abfrtv \%03o 
like image 199
Will Avatar answered Sep 28 '22 22:09

Will