簡體   English   中英

如何使用 Ruby 打開 Windows 資源管理器到文件夾

[英]How to open Windows Explorer to a folder using Ruby

我正在嘗試用 Ruby 編寫一個簡單的程序來打開 Windows 中的特定文件夾。 我正在做一個簡單的系統調用來打開文件夾路徑的資源管理器窗口。 我要打開的路徑是\\AppData\\Roaming\\SketchUp\\SketchUp 2014

當我輸入以下內容時:

explorer %userprofile%\AppData\Roaming\SketchUp\SketchUp 2014

我的cmd窗口文件夾打開沒問題。 當我將此命令放入我的 ruby​​ 腳本並在草圖中正確安裝程序時,打開的文件夾是用戶的 Documents 文件夾。 即使我指定C:\\Users\\UserName yada yada yada的路徑,它仍然只打開 Documents 文件夾的文件夾。 我的 Mac 版本完美運行。 我在這里錯過了什么?

您還應確保在Windows上使用反斜杠( \\ )作為路徑分隔符,否則它將不起作用。 並且這些反斜杠應轉義(即\\\\ )。 因此,例如,打開SketchUp\\SketchUp 2014文件夾:

appdata = ENV['appdata']
path = [appdata, 'SketchUp', 'SketchUp 2014']

pathstr = path.join(File::ALT_SEPARATOR) # File::SEPARATOR == '/', we need "\\"
# => "C:\\Users\\<username>\\AppData\\Roaming\\SketchUp\\SketchUp 2014"

# Pass as argument to explorer call:

`explorer #{pathstr}`
# or
system("explorer #{pathstr}")
# or
system('explorer %s' % pathstr)

Sketchup Api為此工作提供了代碼。 對於Sketchup內部的作品,請編寫以下代碼:

myPlugin_folder = Sketchup.find_support_file("Plugins")
UI.openURL(myPlugin_folder)

我希望這可以幫助你。

我嘗試了你的語法 André 但彈出一個窗口說沒有應用程序可以打開這個 URL。 為了指示我想在 Finder(在 Mac 上)中打開路徑而不是使用默認 Web 瀏覽器打開 URL 的系統,我不得不稍微修改您的代碼:

UI.openURL("file:///#{path)}")

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM