1

我需要在MATLAB中使用UNC-Path。由于进一步需要登录凭据并且不需要存储在机器上,我正在寻找一种更改路径的好方法。 目前我想到了这个解决方案

try
    cd('\\192.168.175.128\shr');
catch
    system('net use \\192.168.175.128\shr pwd /USER:netusr')
    cd('\\192.168.175.128\shr');
end

但我正在寻找更好的想法:也许在 matlab 之类的cd_to_unc(path,usr,pwd)或其他集成解决方案中有一个集成功能?我认为,系统调用是一种无效的,不是吗?
只是为了明确 - 这不是与安全相关的问题。我只是在寻找一种(也许)more efficient方法来做这个坐骑。

4

1 回答 1

0

MATLAB 是一个通用的数学原型 IDE(至少)。我不相信它意味着拥有你正在寻找的能力。在大多数情况下,使用 LAN 上的凭据实现网络访问是高度特定于平台的,我会假设它超出了 MATLAB 的“范围”。

MATLAB 具有用于创建路径字符串的标准实用程序,这些路径字符串大多与平台无关。请参阅fullfilepathsepfilesepfileparts等。但一件事是创建带有路径名的字符串 - 另一件事是访问这些路径。我相信这始终取决于底层操作系统。使用cdandsystem可能是您唯一的选择。

我假设您可以在驱动程序级别解决此问题,并使用内置凭据的特殊 URI(如RFC1738中所述,类似的做法是 URI 中的 FTP 凭据)。安全性可能不太理想。如果这样的东西不存在,我会感到惊讶 - 至少在 linux 上。

于 2012-06-23T07:08:38.063 回答