So, I have switched to Fedora from Debian recently, and have noticed something odd in the default Fedora BASH shell.
If I run autoexpect
and record commands, the following sorts of output gets generated:
# demo of the recordingautoexpect env > fooCtrl-D
# the script expect statement recording# notice that expect recorded output prior to sending the command!set timeout -1spawn $env(SHELL)match_max 100000expect -exact "^[\]777;notify;Command completed;env > foo^[\\^[\]777;precmd^[\\^[\]0;chris@localhost:~^[\\^[\]7;file://localhost.localdomain/home/chris^[\\\[chris@localhost ~\]\$ "send -- "env > foo\r"expect -exact "env > foo\r^[\]777;preexec^[\\^[\]777;notify;Command completed;env > foo^[\\^[\]777;precmd^[\\^[\]0;chris@localhost:~^[\\^[\]7;file://localhost.localdomain/home/chris^[\\\[chris@localhost ~\]\$ "
I will not see any of this what looks like multi-processing junk in a similar recording in, say, debian.
Even worse, here is a first class linux distribution, and autoexpect
flat out fails to run after I record a simple macro due to this apparent shell-abstraction layer.
This seems to be due to the fact that my actions in the fedora shell are in a shell within a shell, and expect
actually records the auto-generated flag response beforesend -- "env > foo\r"
is recorded.
Further, I have shelled into a remote fedora
machine where none of this occurs.
What is going on here?