问题
I have a readline-based application with a prompt, however I'd like it to not show when the input is not interactive.
$ ./readline-app < command-list > result
$ cat result
prompt> Output line 1
prompt> Output line 2
prompt>
$
How can I make the prompt to not print in this case?
回答1:
Use isatty(3) to determine whether stdin and/or stdout are connected to a tty.
来源:https://stackoverflow.com/questions/2406826/gnu-readline-avoid-prompt-string-in-output-if-input-is-not-interactive