IIRC on mac sed -i behaves differently - The default is not GNU sed. I believe you can brew it to get the good one
sed -i
brew
Hi. I have never used any mac. Would you kindly provide details of sed -i behavior so I can update this article accordingly?
BSD sed expects -i to take a file extension so it can save a backup.
-i
Instead of using this:
sed -i YOUR_COMMANDS_HERE foo.txt
you can use something like the following, which will make a backup file and then immediately delete it if the command succeeded:
sed -i.bak YOUR_COMMANDS_HERE -- foo.txt && rm -- "foo.txt.bak"
That looks a little nasty, but it's portable; GNU sed's -i also takes a file extension as an optional argument.
Are you sure you want to hide this comment? It will become hidden in your post, but will still be visible via the comment's permalink.
Hide child comments as well
Confirm
For further actions, you may consider blocking this person and/or reporting abuse
We're a place where coders share, stay up-to-date and grow their careers.
IIRC on mac
sed -i
behaves differently - The default is not GNU sed. I believe you canbrew
it to get the good oneHi. I have never used any mac. Would you kindly provide details of
sed -i
behavior so I can update this article accordingly?BSD sed expects
-i
to take a file extension so it can save a backup.Instead of using this:
you can use something like the following, which will make a backup file and then immediately delete it if the command succeeded:
That looks a little nasty, but it's portable; GNU sed's
-i
also takes a file extension as an optional argument.