fix: /task "<taskName>" no longer works since version 1.3.20 #2806
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Since version 1.3.20, it is no longer possible to launch the "bash::bash" task via the
/task "bash::bash"
option.When bash runs in this context, it crashes immediately after the init scripts (
/etc/profile
,~/.bashrc
, ...) with the messagebash: /title: no such file or directory
After a hard investigation, it occurred to me that the command line that invokes the
bash.exe
process ends now with/title "Cmder"
.So bash thinks it should execute the script contained in the
/title
file, but this file does not exist, hence the error message.To highlight this, you can add these lines to the end of your
~/.bashrc
file:This script starts by looking for the PID of the bash running on Windows (the PID contained in
$$
is a Unix-like virtual PID, it is not the PID that appears in the Windows task manager)Then it will display the command line corresponding to this WinPID, and loop to do the same work on the parent of
bash.exe
which isConEmuC64.exe
then on the parent of the latter,ConEmu64.exe
.At this point in time, the
Cmder.exe
launcher has already exited, so it is not possible to go back any further.The script ends with a
read ...
pause command, so you might want to take the time to investigate Windows Task Manager to confirm that it is as I describe it.The problem is that
Cmder.exe
now passesConEmu
the/title "Cmder"
parameters after the/run {bash::bash}
parameter. Which is contrary to ConEmu's instructions in its documentation:ConEmu args