Открыть файл из командной строки в Windows


62

В Mac OS X и GNOME в Linux существуют команды, которые можно использовать для открытия файлов из командной строки в связанных редакторах графического интерфейса пользователя: openи gnome-open, соответственно. Есть ли такая команда для Windows?


@badp: я упомянул «GNOME в Linux», а не только в Linux.
Вуфферс

Ой, прости.
Badp

@ Badp: Не беспокойся. ;)
Wuffers

xdg-open - более универсальный пример Linux, если кому-то все
равно

Ответы:


58

Если вы в данный момент находитесь в командной строке и у вас есть файл с именем test.pngand, который находится в нем, c:\testвы можете сделать следующее:

Если вы находитесь в каталоге (так следует сказать c:\test>), просто введите:

test.png

который откроет тест в редакторе изображений png по умолчанию.

Если имя файла содержит пробелы, просто заключите имя файла в ""

 "this image.png"

Вы также можете набрать:

c:\test\test.png

который откроет файл, где бы вы ни находились.

Наконец, вы можете передать изображение в другую программу. Например, если у вас есть редактор изображений с именем imageedit.exe и он поддерживает открытие файлов через командные строки (и если программа подключена / доступна или вы находитесь в ее текущем каталоге), вы можете ввести следующее:

 imageedit c:\test\test.png

Просто любопытно: есть ли способ закрыть файлы или программы или окна через командную строку?
Майлз Джонсон

@MilesJohnson только путем вызова других инструментов, таких как taskkill.exe
Уильям Хилсум

1
работает из cmd, но не из PowerShell или Git Bash - более универсальным способом является
explorer

49

Если это зарегистрированное расширение, вы можете использовать «запуск», как в

start WordDoc.doc

6
Хороший ответ для тех, кто использует Bash или другую оболочку.
Ив Жункейра

Это на самом деле правильный ответ. Он даже открывает браузер по умолчанию, если вы укажете URL.
kumarharsh

1
Когда я заключаю имя в кавычки, оно почему-то открывает новое окно оболочки.
Эрханнис

3
Как Стивен Дигби упоминает ниже, первым параметром начала является заголовок окна, поэтому что-то вроде start "" WordDoc.docбы сработало
Тони Брикс,

start делает разные вещи в зависимости от используемой вами оболочки. С Powershell он запускает Start-Process. С помощью cmd он запускает традиционный запуск. С помощью Git Bash он запускает cmd Start. Команда cmd Start не обрабатывает сетевые расположения. Версия PowerShell, как и «проводник», будет подробно описана ниже.
фурикула

10

В командной строке DOS explorer "<PATH>"откроется путь к файлу с программами, связанными с Windows по умолчанию. Это также будет обрабатывать все URI (http:, https:, ftp:) и другие файловые протоколы, определенные в операционной системе Windows. Если файл или протокол не связан ни с одной программой, появится Open Withдиалоговое окно. Если файл отсутствует My Documents, откроется папка по умолчанию . Он также может открывать исполняемые файлы (EXE, BAT-файлы) и пути к пространствам имен оболочки.

Примеры

explorer "http://www.google.com"- откроется http://www.google.com в браузере Windows по умолчанию.

explorer "file:///C:\temp\"откроет временный каталог, если присутствует

explorer "file.txt"откроется file.txtпо текущему пути каталога .ie %CD%path

explorer ::{645ff040-5081-101b-9f08-00aa002f954e}откроет корзину .

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



1

Первый параметр Start - это заголовок окна, поэтому если в имени файла есть пробел, и вы набираете

Запустите «Мой файл.txt»

вы получите окно командной строки с «My File.txt» в качестве заголовка. Чтобы обойти это, используйте фиктивный заголовок,

Запустите «Мой заголовок» «Мой File.txt»

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


1

Если вы находитесь в PowerShell (в приглашении) и хотите открыть файл в текущем каталоге, вы можете попробовать это . Если вы находитесь в командной строке, вы можете достичь того же результата, набравPS (current-directory)> .\myfile.ext

powershell -c .\myfile.ext

(Необходимо включить .\, поскольку PowerShell не загружает файлы из текущего местоположения по умолчанию.) Или вы можете указать имя каталога (относительное или абсолютное), если файл не находится в текущем каталоге.

Для первого сценария - если вы находитесь в PowerShell - если имя файла содержит пробелы, заключите его в кавычки (любого вида) и поставьте перед ним &символ:

PS C: \ Users \ myusername \ Pictures> & ". \ Funny cat.jpg"

(Вы можете добавить пробел после &для читабельности, если вы предпочитаете читабельность, и вы можете использовать /вместо \.) Я не знаю, как заставить это работать во втором сценарии (в котором вы работаете powershell -cиз командной строки), если имя файла или каталога содержит пробелы (и) - кавычки не помогают.


0

Конкретный исполняемый файл с конкретным файлом:

Git Bash Script для Windows 10 :


SHORTCUTS_MAIN_START.sh:

    FILE_PATH="C:\DEV\REPO\GIT\AHK03\SHORTCUTS\SHORTCUTS_MAIN.ahk"
    EXEC_PATH="C:\DEV\REPO\GIT\AHK03\AHK_ROOT\AutoHotkeyU64.exe"

    $EXEC_PATH $FILE_PATH

В этом примере открывается файл, обозначенный как $ FILE_PATH, с исполняемым файлом, обозначенным как $ EXEC_PATH . Если это не работает для вас, попробуйте преобразовать одиночную косую черту ("\") в двойную косую черту ("\\") для путей.


-1

Это может быть немного поздно, но правильной командой для редактирования имени файла в Windows 7 является «write file_name»

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

Редактировать: Кажется, чтобы открыть только WordPad. Для меня это был текстовый редактор по умолчанию.


Хороший трюк. Однако он не запускает текстовый редактор по умолчанию. Мой редактор по умолчанию для файлов .txt - Crimson editor, но эта команда открывает Wordpad.
Ян Догген

Да, это так и для меня. WordPad был по умолчанию для меня. Спасибо за обновления! В любом случае, надеюсь, что это поможет оригинальному постеру.
Кодер

2
writeэто сокращение от write.exeкоторого является исполняемый файл WordPad. Он хранится в том, C:\windowsчто находится на %PATH%, поэтому это просто обычный способ открыть файл с WordPad.
amenthes

-3

В командной строке Windows вы можете запустить

edit [file_name]

для просмотра командных файлов / журналов / текстовых файлов и т. д. Требуется эта команда QBASIC.EXE, которая по умолчанию присутствует в Windows.

Смотрите здесь для других полезных команд MS-DOS.


2
Кажется, не работает на Windows 7 64-разрядной, ни editне qbasic.exeпризнаны. Кроме того, это работает только с простыми текстовыми файлами.
Индрек,

@Indrek, не распознается и на Win8.
Пейсер

Современная командная строка Windows НЕ DOS.
oldherl
Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.