it-swarm.com.ru

Открытие определенного файла с командным файлом?

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

@echo off
start wgnuplot.exe
3
sooprise
start wgnplot.exe "c:\path to file to open\foo.dat"
8
Chris Thornton
@echo off
start %1

или, если нужно, чтобы убежать от персонажей -

@echo off
start %%1
2
Etamar Laron

Вы можете просто позвонить

program "file"

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

Дело в том, что почти каждая программа, которая делает что-то с файлами, позволяет передавать имя файла в командной строке. Если это не так, то, например, вы не можете дважды щелкнуть файлы в графической оболочке, чтобы открыть их.

Если программа, которую вы выполняете, является консольным приложением, то оно будет запущено в текущем окне консоли, а пакетный файл продолжится после этого. Если программа представляет собой программу с графическим интерфейсом (то есть не консольную программу; это различие в EXE-файле), то пакетный файл будет продолжен сразу после запуска.

1
Joey

Эта программа должна иметь определенный API, который вы можете использовать из командной строки.

Например, следующая команда использует 7Zip для извлечения файла Zip. Это работает только тогда, когда 7Zip имеет API для выполнения этой конкретной задачи (с использованием переключателя x).

"C:\Program Files\7-Zip\CommandLine\7za.exe" x C:\docs\base-file-structure.Zip 
1
Marcus Leon

вы находитесь в ситуации, когда вы не можете установить определенную программу в качестве программы по умолчанию, которая будет использоваться при открытии файла определенного типа, я обнаружил, что использование файла .bat удобно. В моем случае Textpad запускается на моей машине через Microsoft Application Virtualization ("AppV"). Путь к Textpad находится, так сказать, в "каталоге AppV". Мой ярлык Textpad AppV имеет это в качестве цели ...

%ALLUSERSPROFILE%\Microsoft\AppV\Client\Integration\
 12345ABC-A1BC-1A23-1A23-1234567E1234\Root\TextPad.exe

Чтобы связать textpad.exe с файлами "txt" через файл "bat":

1) В проводнике создайте новый ('txt') файл и сохраните его как opentextpad.bat в "подходящем" месте.

2) В файле opentextpad.bat введите следующую строку:

textpad.exe %1  

3) Сохранить и закрыть

4) В проводнике выполните сопоставление файлов Windows, щелкнув правой кнопкой мыши файл "txt" (например, "dummy.txt") и выберите "Открыть с помощью> Выбрать программу по умолчанию ..." в меню. В окне "Открыть с помощью" нажмите "Обзор ...", затем перейдите к файлу textpad.bat и выберите его. Нажмите "Открыть". Вы вернетесь в окно "Открыть с помощью". Обязательно установите флажок "Всегда использовать выбранную программу, чтобы открыть этот тип файла". Нажмите "ОК", и окно закроется.

Когда вы откроете файл 'txt' сейчас, он откроет файл с помощью 'textpad.exe'.

Надеюсь, это полезно.

1
L. L. Learner

Если файл, который вы хотите открыть, находится в той же папке, что и ваш пакетный (.bat) файл, то вы можете просто попробовать:

start filename.filetype

пример: start image.png

1
ASGeek

Если вы пытаетесь открыть файл в том же каталоге, это будет:

./PROGRAM TRYING TO OPEN
./FILE NAME/PROGRAM TRYING TO OPEN (or this)

Или, если попытаться вернуться из той же директории, это будет:

../PROGRAM TRYING TO OPEN
../FILE NAME/PROGRAM TRYING TO OPEN (or this)

Иначе, если вам нужен прямой с самого начала, это будет:

(DIRECTORY TYPE)\Users\%username%\(FILE DIRECTORY)
(ex) C:\Users\ajste\Desktop\Henlo.cmd
0
Warriorfoox
@echo off
cd "folder directory to your file"
start filename.ext

Например:

cd "C:\Program Files (x86)\Winamp" 
Start winamp.exe
0
jirehpretorius