I was messing about with different wildcards and ran the following command:
after which I was completely unable to get back to the bash prompt. None of ^C, ^D, or even ^Z worked: they just printed those literal characters.
Update: I discovered that simply typing:
had the same effect. Removing my .bash_history did not help.
So, two questions:
Is it possible to recover from that command?
What exactly did I tell bash to do and what's it waiting for?
If I just run
!(*/) it just says "event not found"
If I run
ls !(*/) or
echo !(*/) then it does the same as above
The bash processes are in the list at 100% CPU, but not
Running the same command on an lxc container just gives "event not found" My bash options are pretty much stock Ubuntu 14.04. Nothing weird.
set -x before the
ls command doesn't echo anything.
Notes2: Output from shopt
autocd off cdable_vars off cdspell off checkhash off checkjobs off checkwinsize on cmdhist on compat31 off compat32 off compat40 off compat41 off compat42 off complete_fullquote on direxpand off dirspell off dotglob off execfail off expand_aliases on extdebug off extglob on extquote on failglob off force_fignore on globstar off globasciiranges off gnu_errfmt off histappend on histreedit off histverify off hostcomplete off huponexit off interactive_comments on lastpipe off lithist off login_shell off mailwarn off no_empty_cmd_completion off nocaseglob off nocasematch off nullglob off progcomp on promptvars on restricted_shell off shift_verbose off sourcepath on xpg_echo off
Output from set +o
set +o allexport set -o braceexpand set -o emacs set +o errexit set +o errtrace set +o functrace set -o hashall set -o histexpand set -o history set +o ignoreeof set -o interactive-comments set +o keyword set -o monitor set +o noclobber set +o noexec set +o noglob set +o nolog set +o notify set +o nounset set +o onecmd set +o physical set +o pipefail set +o posix set +o privileged set +o verbose set +o vi set +o xtrace