title: Writing Non-Standard Characters Into Linux Command Line
body: <p>I've run into a bit of a problem. To do what I'm attempting, I need to be able to enter pure hex values into the standard input of the command line (specifically into a gets() call which is inside of the program) without using IO redirection. I generally have success by using ctrl + u + number to enter ascii characters equivalent to the entered hex value, but I need to be able to enter null chars/backspaces/etc which the terminal either ignores or interprets as an action rather than a character. If I use pipes or IO redirection, I can't interact with the program after the initial input and the program closes. Would anyone have any ideas? I'm thinking possible solutions are either:</p>
  
  <ol>
  <li>Find a way to type the characters in manually and have them preserved</li>
  <li>Find a way to enter the characters in that isn't unicode or ascii but will still be accepted as byte information </li>
  <li>Find a way to pipe or redirect input to the program that is interpreted as from the command line, and then somehow convince it to give control of input back to the command line immediately</li>
  </ol>
  
  <p>The third one I'm not even sure is possible or useful since I'm not totally sure why the program isn't working if it gets information from anything but the command line directly, all I know is that I have to enter it manually or else it won't run. Would anyone have any ideas for any of those 3 options, or any others you can think of? I'm stumped.</p>
  
  <p>(Oh, also, if anyone can explain why sometimes ctrl+u+number outputs characters with completely different hex values from the entered number, I'm very curious, but I don't think it'll help me with my current problem anyways.)</p>