Why do I need to insert 12 characters to clear this bash command-line?^C characters at start of line break bash command editingWhy does SPACE sometimes not work with more (or less)Control-p freezes SSH sessionPasting some text with tabs into a here-document in a PuTTY windowRedirect console output in sed in background process don't give back handInsert empty line between command line promptsWhy does this Bash script to print command line arguments not work?BASH loops, counters, child processes; counter not workingCompletely Clear command prompt through bashBash: How to delete characters from line

Did silent film actors actually say their lines or did they simply improvise “dialogue” while being filmed?

Our group keeps dying during the Lost Mine of Phandelver campaign. What are we doing wrong?

Where is the rule for moving slowly when searching for traps that’s referenced by Dungeon Delver?

How does the oscilloscope trigger really work?

Word or idiom defining something barely functional

How to help new students accept function notation

How can I tell if a flight itinerary is fake

Is this cheap "air conditioner" able to cool a room?

Does the United States guarantee any unique freedoms?

Look mom! I made my own (Base 10) numeral system!

Why is there a need to prevent a racist, sexist, or otherwise bigoted vendor from discriminating who they sell to?

English - Acceptable use of parentheses in an author's name

Looking for a new job because of relocation - is it okay to tell the real reason?

Decode a variable-length quantity

WordCloud: do not eliminate duplicates

How to realistically deal with a shield user?

How can glass marbles naturally occur in a desert?

Is it true that control+alt+delete only became a thing because IBM would not build Bill Gates a computer with a task manager button?

Secure my password from unsafe servers

Why do private jets such as Gulfstream fly higher than other civilian jets?

Need help understanding lens reach

Short story about a teenager who has his brain replaced with a microchip (Psychological Horror)

Does it make sense to occupy open space?

Could one become a successful researcher by writing some really good papers while being outside academia?



Why do I need to insert 12 characters to clear this bash command-line?


^C characters at start of line break bash command editingWhy does SPACE sometimes not work with more (or less)Control-p freezes SSH sessionPasting some text with tabs into a here-document in a PuTTY windowRedirect console output in sed in background process don't give back handInsert empty line between command line promptsWhy does this Bash script to print command line arguments not work?BASH loops, counters, child processes; counter not workingCompletely Clear command prompt through bashBash: How to delete characters from line






.everyoneloves__top-leaderboard:empty,.everyoneloves__mid-leaderboard:empty,.everyoneloves__bot-mid-leaderboard:empty margin-bottom:0;








4















I open an xterm terminal (80 columns x 24 lines), then run $ bash --norc --noprofile, and then $ tty to get the file name of the terminal: the output is /dev/pts/9.



From another terminal I run:



$ printf foo >/dev/pts/9


foo is printed on the shell command-line in the first terminal.

If I press C-u to run unix-line-discard (name of the function given by $ bind -P | grep -i c-u), foo is not removed.

If I insert 11 spaces and press C-u, the spaces are removed but not foo.

If I insert 12 spaces and press C-u, the spaces are removed as well as foo.



enter image description here



Why can't I remove foo when I press C-u while my cursor is right after it, and why do I need to insert 12 characters to remove it?




Environment:



$ lsb_release -a
No LSB modules are available.
Distributor ID: Ubuntu
Description: Ubuntu 16.04.6 LTS
Release: 16.04
Codename: xenial

$ bash --version | head -n1
GNU bash, version 4.3.48(1)-release (x86_64-pc-linux-gnu)

$ xterm -version
XTerm(322)









share|improve this question






























    4















    I open an xterm terminal (80 columns x 24 lines), then run $ bash --norc --noprofile, and then $ tty to get the file name of the terminal: the output is /dev/pts/9.



    From another terminal I run:



    $ printf foo >/dev/pts/9


    foo is printed on the shell command-line in the first terminal.

    If I press C-u to run unix-line-discard (name of the function given by $ bind -P | grep -i c-u), foo is not removed.

    If I insert 11 spaces and press C-u, the spaces are removed but not foo.

    If I insert 12 spaces and press C-u, the spaces are removed as well as foo.



    enter image description here



    Why can't I remove foo when I press C-u while my cursor is right after it, and why do I need to insert 12 characters to remove it?




    Environment:



    $ lsb_release -a
    No LSB modules are available.
    Distributor ID: Ubuntu
    Description: Ubuntu 16.04.6 LTS
    Release: 16.04
    Codename: xenial

    $ bash --version | head -n1
    GNU bash, version 4.3.48(1)-release (x86_64-pc-linux-gnu)

    $ xterm -version
    XTerm(322)









    share|improve this question


























      4












      4








      4








      I open an xterm terminal (80 columns x 24 lines), then run $ bash --norc --noprofile, and then $ tty to get the file name of the terminal: the output is /dev/pts/9.



      From another terminal I run:



      $ printf foo >/dev/pts/9


      foo is printed on the shell command-line in the first terminal.

      If I press C-u to run unix-line-discard (name of the function given by $ bind -P | grep -i c-u), foo is not removed.

      If I insert 11 spaces and press C-u, the spaces are removed but not foo.

      If I insert 12 spaces and press C-u, the spaces are removed as well as foo.



      enter image description here



      Why can't I remove foo when I press C-u while my cursor is right after it, and why do I need to insert 12 characters to remove it?




      Environment:



      $ lsb_release -a
      No LSB modules are available.
      Distributor ID: Ubuntu
      Description: Ubuntu 16.04.6 LTS
      Release: 16.04
      Codename: xenial

      $ bash --version | head -n1
      GNU bash, version 4.3.48(1)-release (x86_64-pc-linux-gnu)

      $ xterm -version
      XTerm(322)









      share|improve this question














      I open an xterm terminal (80 columns x 24 lines), then run $ bash --norc --noprofile, and then $ tty to get the file name of the terminal: the output is /dev/pts/9.



      From another terminal I run:



      $ printf foo >/dev/pts/9


      foo is printed on the shell command-line in the first terminal.

      If I press C-u to run unix-line-discard (name of the function given by $ bind -P | grep -i c-u), foo is not removed.

      If I insert 11 spaces and press C-u, the spaces are removed but not foo.

      If I insert 12 spaces and press C-u, the spaces are removed as well as foo.



      enter image description here



      Why can't I remove foo when I press C-u while my cursor is right after it, and why do I need to insert 12 characters to remove it?




      Environment:



      $ lsb_release -a
      No LSB modules are available.
      Distributor ID: Ubuntu
      Description: Ubuntu 16.04.6 LTS
      Release: 16.04
      Codename: xenial

      $ bash --version | head -n1
      GNU bash, version 4.3.48(1)-release (x86_64-pc-linux-gnu)

      $ xterm -version
      XTerm(322)






      bash terminal-emulator






      share|improve this question













      share|improve this question











      share|improve this question




      share|improve this question










      asked 9 hours ago









      user938271user938271

      2911 gold badge2 silver badges10 bronze badges




      2911 gold badge2 silver badges10 bronze badges























          1 Answer
          1






          active

          oldest

          votes


















          6














          When some other program prints foo to the /dev/pts/9 the communication is between ttys, the shell doesn't participate in the exchange, it can not be aware of how many characters were printed or even if any character was printed. The shell is still believing that there are no characters to erase. In fact, if you print foo to the terminal and try to erase it with backspace it doesn't work. The shell doesn't try to erase what it believes that is not there.



          Try in the terminal where you used the --norc --noprofile command:



          bash-4.3$ printf 'some text'


          to get:



          some textbash-4.3$


          At that point the backspace won't erase anything. Also the ctrl-u will not erase anything. If you type some characters (up to 11 of them) ctrl-u will remove only what was typed (as does backspace). But when there are more than 11 characters, the command ctrl-u will go back to what it believes its the beginning of the line (a faster way to erase many characters) which will leave this prompt:



          some textb


          That could be considered a bug IMO (still present in bash 5.0). But changes to 20 (18 for the OP) characters in bash-5 if the --norc --noprofile options are not used (I have not tried to find the reason, not such an important issue IMnshO).






          share|improve this answer



























          • Thank you for the answer. Regarding the second bug, with $ printf 'some text', I can reproduce on bash 5.0 without --norc --noprofile if I insert 17 characters or more.

            – user938271
            7 hours ago











          • @user938271 Correct, the issue reproduced for me at 20 characters, info added to the answer, thanks.

            – Isaac
            7 hours ago













          Your Answer








          StackExchange.ready(function()
          var channelOptions =
          tags: "".split(" "),
          id: "106"
          ;
          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: false,
          noModals: true,
          showLowRepImageUploadWarning: true,
          reputationToPostImages: null,
          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%2funix.stackexchange.com%2fquestions%2f534628%2fwhy-do-i-need-to-insert-12-characters-to-clear-this-bash-command-line%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









          6














          When some other program prints foo to the /dev/pts/9 the communication is between ttys, the shell doesn't participate in the exchange, it can not be aware of how many characters were printed or even if any character was printed. The shell is still believing that there are no characters to erase. In fact, if you print foo to the terminal and try to erase it with backspace it doesn't work. The shell doesn't try to erase what it believes that is not there.



          Try in the terminal where you used the --norc --noprofile command:



          bash-4.3$ printf 'some text'


          to get:



          some textbash-4.3$


          At that point the backspace won't erase anything. Also the ctrl-u will not erase anything. If you type some characters (up to 11 of them) ctrl-u will remove only what was typed (as does backspace). But when there are more than 11 characters, the command ctrl-u will go back to what it believes its the beginning of the line (a faster way to erase many characters) which will leave this prompt:



          some textb


          That could be considered a bug IMO (still present in bash 5.0). But changes to 20 (18 for the OP) characters in bash-5 if the --norc --noprofile options are not used (I have not tried to find the reason, not such an important issue IMnshO).






          share|improve this answer



























          • Thank you for the answer. Regarding the second bug, with $ printf 'some text', I can reproduce on bash 5.0 without --norc --noprofile if I insert 17 characters or more.

            – user938271
            7 hours ago











          • @user938271 Correct, the issue reproduced for me at 20 characters, info added to the answer, thanks.

            – Isaac
            7 hours ago















          6














          When some other program prints foo to the /dev/pts/9 the communication is between ttys, the shell doesn't participate in the exchange, it can not be aware of how many characters were printed or even if any character was printed. The shell is still believing that there are no characters to erase. In fact, if you print foo to the terminal and try to erase it with backspace it doesn't work. The shell doesn't try to erase what it believes that is not there.



          Try in the terminal where you used the --norc --noprofile command:



          bash-4.3$ printf 'some text'


          to get:



          some textbash-4.3$


          At that point the backspace won't erase anything. Also the ctrl-u will not erase anything. If you type some characters (up to 11 of them) ctrl-u will remove only what was typed (as does backspace). But when there are more than 11 characters, the command ctrl-u will go back to what it believes its the beginning of the line (a faster way to erase many characters) which will leave this prompt:



          some textb


          That could be considered a bug IMO (still present in bash 5.0). But changes to 20 (18 for the OP) characters in bash-5 if the --norc --noprofile options are not used (I have not tried to find the reason, not such an important issue IMnshO).






          share|improve this answer



























          • Thank you for the answer. Regarding the second bug, with $ printf 'some text', I can reproduce on bash 5.0 without --norc --noprofile if I insert 17 characters or more.

            – user938271
            7 hours ago











          • @user938271 Correct, the issue reproduced for me at 20 characters, info added to the answer, thanks.

            – Isaac
            7 hours ago













          6












          6








          6







          When some other program prints foo to the /dev/pts/9 the communication is between ttys, the shell doesn't participate in the exchange, it can not be aware of how many characters were printed or even if any character was printed. The shell is still believing that there are no characters to erase. In fact, if you print foo to the terminal and try to erase it with backspace it doesn't work. The shell doesn't try to erase what it believes that is not there.



          Try in the terminal where you used the --norc --noprofile command:



          bash-4.3$ printf 'some text'


          to get:



          some textbash-4.3$


          At that point the backspace won't erase anything. Also the ctrl-u will not erase anything. If you type some characters (up to 11 of them) ctrl-u will remove only what was typed (as does backspace). But when there are more than 11 characters, the command ctrl-u will go back to what it believes its the beginning of the line (a faster way to erase many characters) which will leave this prompt:



          some textb


          That could be considered a bug IMO (still present in bash 5.0). But changes to 20 (18 for the OP) characters in bash-5 if the --norc --noprofile options are not used (I have not tried to find the reason, not such an important issue IMnshO).






          share|improve this answer















          When some other program prints foo to the /dev/pts/9 the communication is between ttys, the shell doesn't participate in the exchange, it can not be aware of how many characters were printed or even if any character was printed. The shell is still believing that there are no characters to erase. In fact, if you print foo to the terminal and try to erase it with backspace it doesn't work. The shell doesn't try to erase what it believes that is not there.



          Try in the terminal where you used the --norc --noprofile command:



          bash-4.3$ printf 'some text'


          to get:



          some textbash-4.3$


          At that point the backspace won't erase anything. Also the ctrl-u will not erase anything. If you type some characters (up to 11 of them) ctrl-u will remove only what was typed (as does backspace). But when there are more than 11 characters, the command ctrl-u will go back to what it believes its the beginning of the line (a faster way to erase many characters) which will leave this prompt:



          some textb


          That could be considered a bug IMO (still present in bash 5.0). But changes to 20 (18 for the OP) characters in bash-5 if the --norc --noprofile options are not used (I have not tried to find the reason, not such an important issue IMnshO).







          share|improve this answer














          share|improve this answer



          share|improve this answer








          edited 7 hours ago

























          answered 9 hours ago









          IsaacIsaac

          14.2k1 gold badge22 silver badges61 bronze badges




          14.2k1 gold badge22 silver badges61 bronze badges















          • Thank you for the answer. Regarding the second bug, with $ printf 'some text', I can reproduce on bash 5.0 without --norc --noprofile if I insert 17 characters or more.

            – user938271
            7 hours ago











          • @user938271 Correct, the issue reproduced for me at 20 characters, info added to the answer, thanks.

            – Isaac
            7 hours ago

















          • Thank you for the answer. Regarding the second bug, with $ printf 'some text', I can reproduce on bash 5.0 without --norc --noprofile if I insert 17 characters or more.

            – user938271
            7 hours ago











          • @user938271 Correct, the issue reproduced for me at 20 characters, info added to the answer, thanks.

            – Isaac
            7 hours ago
















          Thank you for the answer. Regarding the second bug, with $ printf 'some text', I can reproduce on bash 5.0 without --norc --noprofile if I insert 17 characters or more.

          – user938271
          7 hours ago





          Thank you for the answer. Regarding the second bug, with $ printf 'some text', I can reproduce on bash 5.0 without --norc --noprofile if I insert 17 characters or more.

          – user938271
          7 hours ago













          @user938271 Correct, the issue reproduced for me at 20 characters, info added to the answer, thanks.

          – Isaac
          7 hours ago





          @user938271 Correct, the issue reproduced for me at 20 characters, info added to the answer, thanks.

          – Isaac
          7 hours ago

















          draft saved

          draft discarded
















































          Thanks for contributing an answer to Unix & Linux Stack Exchange!


          • 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%2funix.stackexchange.com%2fquestions%2f534628%2fwhy-do-i-need-to-insert-12-characters-to-clear-this-bash-command-line%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

          Invision Community Contents History See also References External links Navigation menuProprietaryinvisioncommunity.comIPS Community ForumsIPS Community Forumsthis blog entry"License Changes, IP.Board 3.4, and the Future""Interview -- Matt Mecham of Ibforums""CEO Invision Power Board, Matt Mecham Is a Liar, Thief!"IPB License Explanation 1.3, 1.3.1, 2.0, and 2.1ArchivedSecurity Fixes, Updates And Enhancements For IPB 1.3.1Archived"New Demo Accounts - Invision Power Services"the original"New Default Skin"the original"Invision Power Board 3.0.0 and Applications Released"the original"Archived copy"the original"Perpetual licenses being done away with""Release Notes - Invision Power Services""Introducing: IPS Community Suite 4!"Invision Community Release Notes

          Canceling a color specificationRandomly assigning color to Graphics3D objects?Default color for Filling in Mathematica 9Coloring specific elements of sets with a prime modified order in an array plotHow to pick a color differing significantly from the colors already in a given color list?Detection of the text colorColor numbers based on their valueCan color schemes for use with ColorData include opacity specification?My dynamic color schemes

          Ласкавець круглолистий Зміст Опис | Поширення | Галерея | Примітки | Посилання | Навігаційне меню58171138361-22960890446Bupleurum rotundifoliumEuro+Med PlantbasePlants of the World Online — Kew ScienceGermplasm Resources Information Network (GRIN)Ласкавецькн. VI : Літери Ком — Левиправивши або дописавши її