从不同平台上的命令行获取用户名

Ame*_*ina 6 matlab platform-independent username

在MATLAB中有没有办法获取启动会话的用户的用户名?

我对Windows,LinuxMac OSX的解决方案感兴趣.我想如果解决方案是特定于平台的,那么两种解决方案都可以按如下方式集成:

if ispc
    user_name = % method 1
elseif isunix
    user_name = % method 2
elseif ismac
    user_name = % method 3
end
Run Code Online (Sandbox Code Playgroud)

Amr*_*mro 13

如何使用Java(适用于MATLAB支持的所有平台):

user_name = java.lang.System.getProperty('user.name')
Run Code Online (Sandbox Code Playgroud)


laa*_*aph 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
Run Code Online (Sandbox Code Playgroud)

希望有帮助!您可能还想添加一个else I'm confused子句,以防万一您确实发现该系统既不是 UNIX 也不是 pc。