sed gives “illegal byte sequence” error when trying to replace a character












0















I am using the “Terminal” in Mac OS X 10.10 (Yosemite) and I am trying to delete all occurrences of a from a file, by using sed:



sed 's/a//g' file


Which gives me the following error:



sed: RE error: illegal byte sequence


sed 's/a//' file works without a problem. The error appears when I add the g modifier to the regular expression.










share|improve this question

























  • RE error: illegal byte sequence on Mac OS X

    – DavidPostill
    Apr 9 '15 at 15:26











  • Does it mean that the encoding of the file is different?

    – sodiumnitrate
    Apr 9 '15 at 15:30











  • As it stands, sed works as expected on a text file. So maybe you should edit your question to clarify what type of file—and what the contents might be—you are attempting to run this command on.

    – JakeGould
    Apr 9 '15 at 15:31











  • Getting "sed error - illegal byte sequence" (in bash)

    – DavidPostill
    Apr 9 '15 at 15:33
















0















I am using the “Terminal” in Mac OS X 10.10 (Yosemite) and I am trying to delete all occurrences of a from a file, by using sed:



sed 's/a//g' file


Which gives me the following error:



sed: RE error: illegal byte sequence


sed 's/a//' file works without a problem. The error appears when I add the g modifier to the regular expression.










share|improve this question

























  • RE error: illegal byte sequence on Mac OS X

    – DavidPostill
    Apr 9 '15 at 15:26











  • Does it mean that the encoding of the file is different?

    – sodiumnitrate
    Apr 9 '15 at 15:30











  • As it stands, sed works as expected on a text file. So maybe you should edit your question to clarify what type of file—and what the contents might be—you are attempting to run this command on.

    – JakeGould
    Apr 9 '15 at 15:31











  • Getting "sed error - illegal byte sequence" (in bash)

    – DavidPostill
    Apr 9 '15 at 15:33














0












0








0








I am using the “Terminal” in Mac OS X 10.10 (Yosemite) and I am trying to delete all occurrences of a from a file, by using sed:



sed 's/a//g' file


Which gives me the following error:



sed: RE error: illegal byte sequence


sed 's/a//' file works without a problem. The error appears when I add the g modifier to the regular expression.










share|improve this question
















I am using the “Terminal” in Mac OS X 10.10 (Yosemite) and I am trying to delete all occurrences of a from a file, by using sed:



sed 's/a//g' file


Which gives me the following error:



sed: RE error: illegal byte sequence


sed 's/a//' file works without a problem. The error appears when I add the g modifier to the regular expression.







macos terminal sed osx-yosemite






share|improve this question















share|improve this question













share|improve this question




share|improve this question








edited Apr 9 '15 at 21:44









Kevin Panko

5,919113648




5,919113648










asked Apr 9 '15 at 15:18









sodiumnitratesodiumnitrate

2361416




2361416













  • RE error: illegal byte sequence on Mac OS X

    – DavidPostill
    Apr 9 '15 at 15:26











  • Does it mean that the encoding of the file is different?

    – sodiumnitrate
    Apr 9 '15 at 15:30











  • As it stands, sed works as expected on a text file. So maybe you should edit your question to clarify what type of file—and what the contents might be—you are attempting to run this command on.

    – JakeGould
    Apr 9 '15 at 15:31











  • Getting "sed error - illegal byte sequence" (in bash)

    – DavidPostill
    Apr 9 '15 at 15:33



















  • RE error: illegal byte sequence on Mac OS X

    – DavidPostill
    Apr 9 '15 at 15:26











  • Does it mean that the encoding of the file is different?

    – sodiumnitrate
    Apr 9 '15 at 15:30











  • As it stands, sed works as expected on a text file. So maybe you should edit your question to clarify what type of file—and what the contents might be—you are attempting to run this command on.

    – JakeGould
    Apr 9 '15 at 15:31











  • Getting "sed error - illegal byte sequence" (in bash)

    – DavidPostill
    Apr 9 '15 at 15:33

















RE error: illegal byte sequence on Mac OS X

– DavidPostill
Apr 9 '15 at 15:26





RE error: illegal byte sequence on Mac OS X

– DavidPostill
Apr 9 '15 at 15:26













Does it mean that the encoding of the file is different?

– sodiumnitrate
Apr 9 '15 at 15:30





Does it mean that the encoding of the file is different?

– sodiumnitrate
Apr 9 '15 at 15:30













As it stands, sed works as expected on a text file. So maybe you should edit your question to clarify what type of file—and what the contents might be—you are attempting to run this command on.

– JakeGould
Apr 9 '15 at 15:31





As it stands, sed works as expected on a text file. So maybe you should edit your question to clarify what type of file—and what the contents might be—you are attempting to run this command on.

– JakeGould
Apr 9 '15 at 15:31













Getting "sed error - illegal byte sequence" (in bash)

– DavidPostill
Apr 9 '15 at 15:33





Getting "sed error - illegal byte sequence" (in bash)

– DavidPostill
Apr 9 '15 at 15:33










1 Answer
1






active

oldest

votes


















0














You need to add -i along with two empty ''. So it would look like this:
sed -i '' 's/a//g' filename.txt



Explanation is that -i equals in-place (save it right back to the original file)






share|improve this answer























    Your Answer








    StackExchange.ready(function() {
    var channelOptions = {
    tags: "".split(" "),
    id: "3"
    };
    initTagRenderer("".split(" "), "".split(" "), channelOptions);

    StackExchange.using("externalEditor", function() {
    // Have to fire editor after snippets, if snippets enabled
    if (StackExchange.settings.snippets.snippetsEnabled) {
    StackExchange.using("snippets", function() {
    createEditor();
    });
    }
    else {
    createEditor();
    }
    });

    function createEditor() {
    StackExchange.prepareEditor({
    heartbeatType: 'answer',
    autoActivateHeartbeat: false,
    convertImagesToLinks: true,
    noModals: true,
    showLowRepImageUploadWarning: true,
    reputationToPostImages: 10,
    bindNavPrevention: true,
    postfix: "",
    imageUploader: {
    brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
    contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
    allowUrls: true
    },
    onDemand: true,
    discardSelector: ".discard-answer"
    ,immediatelyShowMarkdownHelp:true
    });


    }
    });














    draft saved

    draft discarded


















    StackExchange.ready(
    function () {
    StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fsuperuser.com%2fquestions%2f899640%2fsed-gives-illegal-byte-sequence-error-when-trying-to-replace-a-character%23new-answer', 'question_page');
    }
    );

    Post as a guest















    Required, but never shown

























    1 Answer
    1






    active

    oldest

    votes








    1 Answer
    1






    active

    oldest

    votes









    active

    oldest

    votes






    active

    oldest

    votes









    0














    You need to add -i along with two empty ''. So it would look like this:
    sed -i '' 's/a//g' filename.txt



    Explanation is that -i equals in-place (save it right back to the original file)






    share|improve this answer




























      0














      You need to add -i along with two empty ''. So it would look like this:
      sed -i '' 's/a//g' filename.txt



      Explanation is that -i equals in-place (save it right back to the original file)






      share|improve this answer


























        0












        0








        0







        You need to add -i along with two empty ''. So it would look like this:
        sed -i '' 's/a//g' filename.txt



        Explanation is that -i equals in-place (save it right back to the original file)






        share|improve this answer













        You need to add -i along with two empty ''. So it would look like this:
        sed -i '' 's/a//g' filename.txt



        Explanation is that -i equals in-place (save it right back to the original file)







        share|improve this answer












        share|improve this answer



        share|improve this answer










        answered Jan 9 at 10:43









        Jannick LangkjærJannick Langkjær

        12




        12






























            draft saved

            draft discarded




















































            Thanks for contributing an answer to Super User!


            • Please be sure to answer the question. Provide details and share your research!

            But avoid



            • Asking for help, clarification, or responding to other answers.

            • Making statements based on opinion; back them up with references or personal experience.


            To learn more, see our tips on writing great answers.




            draft saved


            draft discarded














            StackExchange.ready(
            function () {
            StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fsuperuser.com%2fquestions%2f899640%2fsed-gives-illegal-byte-sequence-error-when-trying-to-replace-a-character%23new-answer', 'question_page');
            }
            );

            Post as a guest















            Required, but never shown





















































            Required, but never shown














            Required, but never shown












            Required, but never shown







            Required, but never shown

































            Required, but never shown














            Required, but never shown












            Required, but never shown







            Required, but never shown







            Popular posts from this blog

            "Incorrect syntax near the keyword 'ON'. (on update cascade, on delete cascade,)

            Alcedinidae

            Origin of the phrase “under your belt”?