在Python中也存在同样的问题: 如何以Python编程的方式获取Dropbox文件夹的位置? ,或者在这里为OSX: 如何获取当前login的Dropbox文件夹的位置
在PowerShell中同样的事情。 我需要DropBox的path将文件复制到它(build立一个软件,然后复制到Dropbox与团队分享)。
这Dropbox的帮助页面告诉我们这个信息的存储位置,即在用户的AppData的json文件中: https : //www.dropbox.com/help/4584
function GetDropBoxPathFromInfoJson { $DropboxPath = Get-Content "$ENV:LOCALAPPDATA\Dropbox\info.json" -ErrorAction Stop | ConvertFrom-Json | % 'personal' | % 'path' return $DropboxPath }
上面的行取自: https : //www.powershellgallery.com/packages/Spizzi.Profile/1.0.0/Content/Functions%5CProfile%5CInstall-ProfileEnvironment.ps1请注意,它不检查是否有一个Dropbox的商业账户,或者如果你有两个。 它只是使用个人的。
然后,您可以使用此基础Dropbox文件夹来构建最终路径,例如:
$targetPath = Join-Path -Path (GetDropBoxPathFromInfoJson) -ChildPath 'RootDropboxFolder\Subfolder1\Subfolder2' if (-not (Test-Path -Path $targetPath)) { throw "Path '$targetPath' not found!" }
–
另一种方法是使用host.db文件,如本页所示: http ://bradinscoe.tumblr.com/post/75819881755/get-dropbox-path-in-powershell
$base64path = gc $env:appdata\Dropbox\host.db | select -index 1 # -index 1 is the 2nd line in the file $dropboxPath = [System.Text.Encoding]::ASCII.GetString([System.Convert]::FromBase64String($base64path)) # convert from base64 to ascii