python sage从命令行附加并运行另一个命令

时间:2013-10-13 11:35:08

标签: command-line sage

我想加载一个sage文件并从该文件运行一个函数,全部来自bash。

attach命令给了我麻烦......

这有效:

bash-prompt$ sage -c "print 2; print 3"
2
3
bash-prompt$

这也有效:

bash-prompt$ sage -c "attach somefile.sage"
some print just to confirm the file is loaded
bash-prompt$

但这不起作用:

bash-prompt$ sage -c "attach somefile.sage; print 3"
python: can't open file '/path/to/somefile.sage; print Integer(3)': [Errno 2] No such file or directory

我怎样才能让它发挥作用,或者我可以做些什么呢?

2 个答案:

答案 0 :(得分:1)

如果有人帮助......

我最终使用了这个怪物:

sage somefile.sage && sage -python -c "execfile('somefile.py'); wrapper()" && rm somefile.py

好的,rm部分并非真正必要:)

答案 1 :(得分:0)

我认为最简单的方法是将函数作为实际Sage文件中的最后一行调用:例如,“somefile.sage”将作为其最后一行print 3