1
在一個Rails應用程序我正在使用的網絡位置讀取文件的網絡位置的可用磁盤空間如下:查找使用Ruby
Dir.chdir('\\server\share')
Dir.glob('**/*.txt').each do |f|
....
end
我想找到這個目錄中的可用磁盤空間(一Windows PC)使用Ruby。
要找到一個本地磁盤上可用的字節我以前用過的sys-filesystem寶石:
require 'sys/filesystem'
stat = Sys::Filesystem.stat("C:\\")
bytes = stat.block_size * stat.blocks_available
我只能得到SYS文件系統返回給本地磁盤或安裝的網絡路徑的信息。網絡位置的格式是\\server\share
。
任何人都可以提出一個替代方案嗎?
您可以使用Windows API [GetDiskFreeSpaceEx](https://msdn.microsoft.com/en-us/library/windows/desktop/aa364937%28v=vs.85%29.aspx)和[call它來自Ruby](http://blade.nagaokaut.ac.jp/cgi-bin/scat.rb/ruby/ruby-talk/95347)。 GetDiskFreeSpaceEx接受UNC路徑。您也可以檢查您使用的寶石是否支持此功能。 – lurker