Я вижу, как запускать многие другие программы из командного файла, но я не могу t найти команду типа open в Mac OS X. Существует ли такой инструмент в Windows? Также подойдет Powershell или вызов Windows API из исполняемого файла.
Или, другими словами, как я могу вызвать обработчик Windows по умолчанию "Открыть" для файла из пакетного файла или сценария powershell?
Ответ 1 · рейтинг 38 · Leniel Maccaferri
В Windows вы можете открыть проводник с помощью следующей команды:
C:\Users\Leniel>start %windir%\explorer.exe
Если вы хотите, чтобы он открывал определенную папку, сделайте это, например:
C:\Users\Leniel>start %windir%\explorer.exe "C:\Users\Leniel\Desktop"
Ответ 2 · рейтинг 24 · Joey
Прямой эквивалент OS X open - start в cmd.
start foo.txt
запустит Блокнот (или любой другой текстовый редактор, который вы используете),
start http://example.com
запустит ваш браузер,
start \someDirectory
запустит проводник и т.д.
Следует соблюдать осторожность с аргументами в кавычках, так как start будет интерпретировать первый аргумент в кавычках как заголовок окна, поэтому что-то вроде
start "C:\Users\Me\Folder with spaces\somedocument.docx"
не будет работать, как задумано. Вместо этого в этом случае добавьте пустой аргумент в кавычках:
start "" "C:\Users\Me\Folder with spaces\somedocument.docx"
Обратите внимание, что start - это не отдельная программа, а встроенная оболочка. Итак, чтобы вызвать это из внешней программы, вы должны использовать что-то вроде
cmd /c start ...
Эквивалентом в PowerShell является либо Start-Process, либо Invoke-Item. Последний, вероятно, лучше подходит для этой задачи.
Invoke-Item foo.txt # launches your text editor with foo.txt
Invoke-Item . # starts Explorer in the current directory
Что касается Windows API, вы ищете ShellExecute a> с глаголом open.
Ответ 5 · рейтинг 1 · asg
проводник.exe. работал на меня.
explorer.exe .
IMO. Поскольку нам нужно открыть проводник Windows из командной строки, explorer.exe . легко запомнить.