Имя: Пароль:
IT
 
Передача параметров из одного bat файла в другой
0 Господин ПЖ
 
11.08.11
12:01
например два батника: 1.bat и 2.bat

1.bat:

@echo off
set directory1 = "C:\123"
set directory2 = "C:\123"

call 2.bat %directory1% %directory2%

//////////////

2.bat:

echo #2

и выводит пустоту в 2.bat
1 andrewks
 
11.08.11
12:02
в пути пробелы?
2 andrewks
 
11.08.11
12:03
call 2.bat "%directory1%" "%directory2%"
3 skunk
 
11.08.11
12:04
echo %2
4 Rebelx
 
11.08.11
12:04
(0) а почему #
надо %
5 Господин ПЖ
 
11.08.11
12:05
ну в смысле %2 и пишу... все равно пустота
6 Rebelx
 
11.08.11
12:08
set directory1 = "C:\123"
пробелы убери
7 miki
 
11.08.11
12:10
так надо:

call 2.bat %directory1 %directory2
8 Господин ПЖ
 
11.08.11
12:10
(6) >"C:\123"

какие пробелы? в конце строки?
9 Rebelx
 
11.08.11
12:12
до = и после
10 miki
 
11.08.11
12:12
(9)+1
set directory1="C:\123"
set directory2="C:\123"
11 Rebelx
 
11.08.11
12:13
но в основном до
но тогда надо учесть, что ведущий пробел (который после =) включится в значение переменной
12 Господин ПЖ
 
11.08.11
12:16
(10) спасибо.

действительно дело было в пробелах " = "... такая мелочь вроде бы
13 andrewks
 
11.08.11
13:20
(9) точняк, когда-то натыкался на такое в чужом батнике. сам пробелы не ставлю никогда, даже в 1С, приучился так
14 Torquader
 
11.08.11
13:26
Непонятно, только зачем передавать переменные в другой файл.
SET VARIABLE=VALUE
устанавливает переменную окружения, и её легко получить с другом BAT-файле и её родному имени.
15 skunk
 
11.08.11
13:28
(14)есть шанс нарваться на каку
16 Reset
 
11.08.11
13:28
(14) Чтобы второй батник был универсальнее и работал с разными параметрами
17 andrewks
 
11.08.11
13:33
(14) в таком случае проще вообще не выносить код в отдельный батник.