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

62

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

Wuffers
источник
@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}откроет корзину .

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

lalthomas
источник
5
powershell -c "folder\childfolder\file.txt"

Источник: https://technet.microsoft.com/en-us/library/ee176882.aspx

Простой и универсальный.

Эрик
источник
Выглядит хорошо для меня.
DavidPostill
@DavidPostill Вы считаете мой ответ полезным?
Эрик
Да. Есть +1;)
DavidPostill
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из командной строки), если имя файла или каталога содержит пробелы (и) - кавычки не помогают.

andrey.shedko
источник
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 . Если это не работает для вас, попробуйте преобразовать одиночную косую черту ("\") в двойную косую черту ("\\") для путей.

J MADISON
источник
-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.

phoenix079
источник
2
Кажется, не работает на Windows 7 64-разрядной, ни editне qbasic.exeпризнаны. Кроме того, это работает только с простыми текстовыми файлами.
Индрек,
@Indrek, не распознается и на Win8.
Пейсер
Современная командная строка Windows НЕ DOS.
oldherl