我使用Renci.SshNet(SSH.NET)库在SFTP服务器上上传文件。在上传文件之前,我想检查可用硬盘的大小。我正在使用此代码。
ssf = New SftpClient("ip", "port", "user", "password")
ssf.Connect()
Dim fpath As String = "/"
Dim res = ssf.GetStatus(fpath)
我获得了完整,免费且可用的节点和块。但是无法通过这种方法找到可用的硬盘。或者还有其他方法吗?
答案 0 :(得分:0)
使用SftpFileSytemInformation.BlockSize
字段将块转换为字节。
E.g。
freeBytes = res.FreeBlocks * res.BlockSize
请参阅http://www.nudoq.org/#!/Packages/SSH.NET/Renci.SshNet/SftpFileSytemInformation
另见扩展请求“statvfs@openssh.com”和“fstatvfs@openssh.com”部分:
https://cvsweb.openbsd.org/cgi-bin/cvsweb/src/usr.bin/ssh/PROTOCOL?rev=HEAD