Что такое текущий каталог в пакетном файле?
Я хочу создать несколько пакетных файлов для автоматизации программы.
мой вопрос в том, когда я создаю пакетный файл, что такое текущий каталог?
Это каталог, в котором находится файл, или это тот же каталог, который отображается в командной строке, или что-то еще?
6 ответов:
из вашего пакетного файла:
%cd%относится к текущий рабочий каталог (переменная)%~dp0ссылается на полный путь к каталогу пакетного файла (статический)%~dpnx0относится к полному пути к каталогу пакета и имени файла (статический).
Это обычно - это каталог, из которого запускается пакетный файл, но если вы запускаете пакетный файл из ярлыка, может быть задан другой начальный каталог. Кроме того, когда вы находитесь в cmd, и ваш текущий каталог
c:\dir3, вы все еще можете запустить пакетный файл с помощьюc:\dir1\dir2\batch.batв этом случае текущий каталог будетc:\dir3.
в пакетном файле %cd% является наиболее часто используемой командой для текущего каталога, хотя вы можете установить свою собственную переменную:
set mypath=%cd% echo %mypath% (where %mypath% is the current directory that the batch file is sitting in)так сказать, вы хотели открыть Myprog.исполняемый. Если он был в той же папке, используйте команду:
start %mypath%\Myprog.exeэто откроет Myprog из текущей папки.
другой вариант-сделать каталог в C: называется AutomatePrograms. Затем вы переносите файлы в эту папку, а затем можете открыть их с помощью следующая команда:
start "" "C:\AutomatePrograms\Myprog1.exe" start "" "C:\AutomatePrograms\Myprog2.exe" start "" "C:\AutomatePrograms\Myprog3.exe"
- Это каталог, из которого вы запускаете пакетный файл. Например, если ваша партия находится в
c:\dir1\dir2и выcd c:\dir3, затем запустите пакет, текущий каталог будетc:\dir3.
скажем, вы открываете файл в текущем каталоге. Команда будет:
start %cd%\filename.filetypeнадеюсь я ответил на ваш вопрос.
это каталог, из которого вы запускаете команду для выполнения пакетного файла.
Как уже упоминалось в приведенных выше ответах, вы можете добавить следующую команду в свой скрипт для проверки:
> set current_dir=%cd% > echo %current_dir%
Comments