Terminal 具有不同VirtualNV的两个XTerm
我的Ubuntu桌面上有两个XTerm终端。我的目标是在打开第一个时激活py2 virtualenv,在打开第二个时激活py3 试图通过更改Terminal 具有不同VirtualNV的两个XTerm,terminal,ubuntu-14.04,virtualenv,xterm,Terminal,Ubuntu 14.04,Virtualenv,Xterm,我的Ubuntu桌面上有两个XTerm终端。我的目标是在打开第一个时激活py2 virtualenv,在打开第二个时激活py3 试图通过更改[桌面输入]下的Exec行来操纵行为,但无效 [Desktop Entry] Name=PY2-VENV Exec=uxterm && source /home/user/py2-venv/bin/activate Terminal= true . . . 有什么办法吗?你的意思可能是 Exec=uxterm (用于设置xterm的she
[桌面输入]
下的Exec
行来操纵行为,但无效
[Desktop Entry]
Name=PY2-VENV
Exec=uxterm && source /home/user/py2-venv/bin/activate
Terminal= true
.
.
.
有什么办法吗?你的意思可能是
Exec=uxterm
(用于设置xterm的shell脚本)而不是
Exec=uterm
但是,该&&
可能不起作用,因为对可以直接转换为execvp
调用的内容的调用:
Exec键必须包含命令行命令行由一个可执行程序组成,可选择后跟一个或多个参数。可执行程序可以使用其完整路径指定,也可以仅使用可执行文件的名称指定。如果未提供完整路径,将在桌面环境使用的$path环境变量中查找可执行文件。可执行程序的名称或路径不能包含等号(=)。参数之间用空格分隔
论点可以全部引用。如果参数包含保留字符,则必须引用该参数。引用参数的规则也适用于提供的可执行程序的可执行名称或路径
假设您的shell是bash,您可以使用它的注释行选项来指向不同的shell初始化文件:
--init-file file
--rcfile file
Execute commands from file instead of the system wide initial‐
ization file /etc/bash.bashrc and the standard personal initial‐
ization file ~/.bashrc if the shell is interactive (see INVOCA‐
TION below).
例如,类似这样的事情:
Exec=uxterm -e bash --rcfile /home/user/py2-venv/bin/activate
谢谢你的回复。你是对的,我的意思是“输入错误”。我尝试了您的解决方案,但仍然不起作用,原因是上次它不起作用,因为exec命令在
-e
之后缺少引号。工作语法如下所示:Exec=uxterm-e“bash--rcfile/home/user/py2-venv/bin/activate”。非常感谢你!