poster
2019-12-14, 20:13
我从不使用GUI,并且总是在使用-nodesktop -nodisplay选项设置的终端(也为全屏显示,因此没有标题栏)内。我还连接了不同的服务器来运行matlab,每个服务器在占用计算资源方面都有不同的限制。由于很难记住我在哪个服务器上,特别是如果我打开了多个会话,因此我想知道是否可以更改显示服务器名称的提示。尽我所能,我找不到解释该问题的资源(我开始认为Mathworks不支持它)。我知道,一种解决方法是简单地将一个函数调用写入system('hostname')并将函数放在路径中,这样与键入pwd来查找目录一样容易。我想知道是否还有更优雅的东西。
回答:
MathWorks File Exchange (http://www.mathworks.com/matlabcentral/fileexchange/)上有一份可以帮助您完成此任务的提交: Yair Altman的 (http://www.mathworks.com/matlabcentral/fileexchange/authors/27420) setPrompt (http://www.mathworks.com/matlabcentral/fileexchange/26471-setprompt-set-the-command-window-prompt) 。在R2010b中使用它,我注意到我收到警告消息:
Warning: Possible deprecated use of set on a Java callback. > In setPrompt at 115 我能够像这样使用warning (https://www.mathworks.com/help/matlab/ref/warning.html)功能来抑制这种情况:
warning('off','MATLAB:hg:JavaSetHGProperty'); 这是我使用system (https://www.mathworks.com/help/matlab/ref/system.html)功能将提示更改为主机名的方法:
>> [~,systemString] = system('hostname'); >> setPrompt([deblank(systemString) '>> ']); P11-4504>> 函数deblank (https://www.mathworks.com/help/matlab/ref/deblank.html)用于从字符串中删除结尾的空格(在这种情况下为换行符)。
注意:退出并重新启动MATLAB之后,上述更改(禁止显示的警告和修改的提示)不会保留,因此您可以将上述代码放入startup.m文件中, (https://www.mathworks.com/help/matlab/ref/startup.html)以在每次启动新会话时自动应用它们。
更多&回答... (https://stackoverflow.com/questions/5048889)
回答:
MathWorks File Exchange (http://www.mathworks.com/matlabcentral/fileexchange/)上有一份可以帮助您完成此任务的提交: Yair Altman的 (http://www.mathworks.com/matlabcentral/fileexchange/authors/27420) setPrompt (http://www.mathworks.com/matlabcentral/fileexchange/26471-setprompt-set-the-command-window-prompt) 。在R2010b中使用它,我注意到我收到警告消息:
Warning: Possible deprecated use of set on a Java callback. > In setPrompt at 115 我能够像这样使用warning (https://www.mathworks.com/help/matlab/ref/warning.html)功能来抑制这种情况:
warning('off','MATLAB:hg:JavaSetHGProperty'); 这是我使用system (https://www.mathworks.com/help/matlab/ref/system.html)功能将提示更改为主机名的方法:
>> [~,systemString] = system('hostname'); >> setPrompt([deblank(systemString) '>> ']); P11-4504>> 函数deblank (https://www.mathworks.com/help/matlab/ref/deblank.html)用于从字符串中删除结尾的空格(在这种情况下为换行符)。
注意:退出并重新启动MATLAB之后,上述更改(禁止显示的警告和修改的提示)不会保留,因此您可以将上述代码放入startup.m文件中, (https://www.mathworks.com/help/matlab/ref/startup.html)以在每次启动新会话时自动应用它们。
更多&回答... (https://stackoverflow.com/questions/5048889)