#11790: `sage --sh -c ...` shouldn't print [that many] messages
-----------------------+----------------------------------------------------
Reporter: leif | Owner:
Type: defect | Status: new
Priority: minor | Milestone: sage-4.7.2
Component: scripts | Keywords: subshell commands sage-sage
environment batch mode stdout
Work_issues: | Upstream: N/A
Reviewer: | Author:
Merged: | Dependencies:
-----------------------+----------------------------------------------------
Currently, we have
{{{
#!sh
$ ./sage --sh -c "echo Hello"
Starting subshell with Sage environment variables set.
Be sure to exit when you are done and do not do anything
with other copies of Sage!
Bypassing shell configuration files ...
Hello
Exited Sage subshell.
$
}}}
which is IMHO odd.
And it's inconvenient if one wants to further process the output of some
command run in a Sage subshell.
In `local/bin/sage-sage`, we have:
{{{
#!sh
if [ "$1" = '-sh' -o "$1" = '--sh' ]; then
# AUTHORS:
# Carl Witty and William Stein: initial version
# Craig Citro: add options for not loading profile
cd "$CUR"
shift
echo ""
echo "Starting subshell with Sage environment variables set."
echo "Be sure to exit when you are done and do not do anything"
echo "with other copies of Sage!"
echo ""
SHELL_NAME=`basename $SHELL`
echo "Bypassing shell configuration files ..."
echo
...
$SHELL_NAME $SHELL_OPTS "$@"
status=$?
echo "Exited Sage subshell."
exit $status
fi
}}}
So I'd propose to change `sage-sage` to not print ''any'' messages if the
first argument to the subshell is `-c`.
Alternatively, all (or a reduced set of) messages should at least go to
`stderr` instead of `stdout`, perhaps regardless of whether `-c` was
specified or not.
In addition, if we dropped the "`Exited Sage subshell.`" (at least in the
case of `-c`), we could (or should) also use
{{{
#!sh
exec $SHELL_NAME $SHELL_OPTS "$@"
}}}
(Actually, `exec` should be used in a couple of Sage commands which don't
need any "post-processing", e.g. by `sage-sage`.)
--
Ticket URL: <http://trac.sagemath.org/sage_trac/ticket/11790>
Sage <http://www.sagemath.org>
Sage: Creating a Viable Open Source Alternative to Magma, Maple, Mathematica,
and MATLAB
--
You received this message because you are subscribed to the Google Groups
"sage-trac" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to
[email protected].
For more options, visit this group at
http://groups.google.com/group/sage-trac?hl=en.