I'm running into a weird problem with sed. I believe what I'm trying to do
should work fine, but seem to be stymied by weirdness in sed's argument
processing. This is on 8.2-RELEASE-p2.
which sed
/usr/bin/sed
According to years of experience and re-reading the man page five times today
sed -i'' -e 's/^\(REVOKE ALL ON SCHEMA public FROM \)postgres/\1pgsql/' \
? -e 's/^\(GRANT ALL ON SCHEMA public TO \)postgres/\1pgsql/' \
? /tmp/pgdump
sed: -e: No such file or directory
If you put a space after -i:
sed -i '' ...
It will work. The '-i' option takes
On 2011/06/21, at 11:24, Lars Kellogg-Stedman wrote:
sed -i'' -e 's/^\(REVOKE ALL ON SCHEMA public FROM \)postgres/\1pgsql/' \
? -e 's/^\(GRANT ALL ON SCHEMA public TO \)postgres/\1pgsql/'\
? /tmp/pgdump
sed: -e: No such file or directory
If you put a space after -i:
Aha... I knew it had to be something. I couldn't quite wrap my head around
the idea that sed is misbehaving.. it seems way too old and set in its ways
for that. However, I did get the -i'' syntax from somewhere.. perhaps it's
a GNUism and I just forgot where I picked it up.
In GNU sed,