0

我需要获取用户的主目录或至少他的名字。

使用FileUtils,我需要根据他们的帐户名移动文件,使用~/似乎不起作用。

我将如何获取用户的帐户名?

4

2 回答 2

0

我还不是 ruby​​motion 用户,但在大多数 rubies 中你可以做到

ENV["HOME"]

对于主目录和

ENV["USER"]

让用户使用定义的环境变量准确地实现这一目标。

于 2014-05-21T06:58:43.567 回答
0

要获取文档的路径并在 OSX 中创建一个新文件夹,您可以这样做。

directory = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, true).first
directory = directory.stringByAppendingPathComponent("Sub Folder")

fileManager = NSFileManager.defaultManager

fileExists = fileManager.fileExistsAtPath(directory)
if (fileExists)
  NSLog("Folder already exists")
else
  if(!fileManager.createDirectoryAtPath(directory, withIntermediateDirectories:true, attributes: nil, error: nil))
    NSLog("Failed to create folder")
  else
    NSLog("Successfully created folder")
  end
end

如果您想要的只是用户帐户的名称,您可以使用NSHost


对于主目录,您可以改用 NSHomeDirectory。

fm = NSFileManager.defaultManager
directory = NSSearchPathForDirectoriesInDomains(NSHomeDirectory, NSUserDomainMask, true).first
fm.contentsOfDirectoryAtPath(directory, error: nil).each do |file|
  puts file # outputs each file under the home directory
  // Copy file here using NSFileManager
end

然后你可以使用 NSFileManager 的copyItemAtPath


于 2014-05-22T05:15:14.937 回答