Как запустить / открыть файл / папку, которая содержит пробел в своем имени через командную строку?

22

Я пытаюсь использовать startкоманду в командной строке для открытия файлов и папок, но я не могу открыть файлы и папки, которые содержат пробелы в их имени.

Я пробовал следующие запросы (тестирование на C:\Program Files):

start C:\Program Files
start C:/Program\ Files
start C:/"Program Files"
start C:\"Program Files"
start "C:\Program Files"
start "C:/Program Files"
start C:/Program_Files
start C:/Program%20Files

Но никто из них не работает.

amiregelz
источник
4
Не строго говоря, ответ, который вы ищете (следовательно, опубликован в качестве комментария), но start c:\progra~1сделает свое дело.
Брайан

Ответы:

23

Вы бы использовали:

start "" "c:\program files\"

Это потому, что первый параметр используется в качестве заголовка окна и, как ни странно, заключен в двойные кавычки.

Редактировать:

Вот источник об этом: SS64

Например, если вы просто напечатаете, start "title"откроется новое окно cmd с заголовком «title» в строке заголовка.

nerdwaller
источник
3
Что с пустым?
Коул Джонсон
1
+1; интересно, хотелось бы узнать, как это работает?
Брайан
3
Это заголовок окна, параметр заключен в двойные кавычки по какой-то глупой причине. Я редко использую Windows, особенно когда они занимаются этим, что для меня мало смысла. В Linux CLI будет -t или что-то еще для заголовка.
nerdwaller
Ух ты, доверяй кому-то еще, кроме Microsoft, что-то подобное!
Брайан
2
Да, очевидно, зачем нужны цитаты. Однако почему это не является необязательным параметром не является. Вот в чем вопрос.
nerdwaller
13

Вам конкретно нужно использовать start?

Вы можете использовать, explorer "c:\program files"чтобы дать вам эффект, который вы ищете.

Bryan
источник
1
Не знал об этом. Есть ли разница между startи explorer?
amiregelz
Start создан для запуска команды, поэтому он будет создавать окно и запускать скрипт. Проводник открывает проводник, просто и понятно.
nerdwaller
В этой статье подробно описываются некоторые параметры командной строки (работают на Win 7, несмотря на то, что в ней указана Win XP), которые делают странные вещи, такие как открытие окна проводника и выделение определенного файла, например,explorer /select,c:\Windows\System32\calc.exe
Bryan
2
@nerdwaller, исследователь, также запустит приложение, например explorer c:\Windows\System32\calc.exe.
Брайан
1
Я извиняюсь за то, что пропустил это. Документы и тому подобное. explorer Documents\example.xlsx Спасибо, что указали на это! Мне всегда интересно, как люди могут работать в обычном CMD, после работы через терминал linux ... Хаха. Автозаполнение это шутка для команд ...!
nerdwaller
1

Если вы уже находитесь в текущем каталоге, вы всегда можете сделать это.

C:\>cd "C:\Program Files"

C:\Program Files>start .

C:\Program Files>
dmcgill50
источник
И даже explorer .будет работать
Нерали Ачарья
0

Введите cd spaceи нажмите, Tabчтобы получить список элементов каталога, просто.

Вишал Шарма
источник
0

Использовать кодировку URL

// изначально назначаем базовый путь из имени файла

var basePath = Path.GetDirectoryName (doc.Filename);

this.BaseUri = new Uri ($ "file: /// {basePath}"); // добавить файл: /// префикс

user1118961
источник