在MATLAB中是否有办法获取启动会话的用户的用户名?
我对 Windows , Linux 和 Mac OSX 的解决方案感兴趣。我想如果解决方案是特定于平台的,那么两种解决方案都可以按如下方式集成:
if ispc
user_name = % method 1
elseif isunix
user_name = % method 2
elseif ismac
user_name = % method 3
end
答案 0 :(得分:13)
如何使用Java(适用于MATLAB支持的所有平台):
user_name = java.lang.System.getProperty('user.name')
答案 1 :(得分:4)
if isunix
[~, user_name] = system('whoami') % exists on every unix that I know of
% on my mac, isunix == 1
elseif ispc
[~, user_name] = system('echo %USERDOMAIN%\%USERNAME%') % Not as familiar with windows,
% found it on the net elsewhere, you might want to verify
end
希望有所帮助!您可能还想放入一个else I'm confused
子句,以防您确实发现该系统不是unix或pc。
答案 2 :(得分:1)
要在Windows上获取它:
getenv('USERNAME')