2014-11-22 3 views
0

Это кажется глупым вопросом, но мне нужно добавить инструкцию как текстовую строку, но добавить другие строки меньше, что мне нужно.Добавить команду в файл в CMD Script

tasklist /fi "SessionName eq services" | find /I "Tomcat" | find /I ".exe" 

Я пытаюсь с:

@echo off 
set "IniCatching=%date:~0,4%%date:~5,2%%date:~8,2%-%time:~0,2%%time:~3,2%%time:~6,5%" 
set theFile=%~n0_%IniCatching%.txt 
set "tasklistecho=echo tasklist /fi ^"SessionName eq services^" ^| find /I ^"Tomcat^" ^| find /I ^".exe^"" 
echo Before>>%theFile% 
call %tasklistecho%>>%theFile% 
echo After>>%theFile% 

Но это, кажется, что пытаются показать результат (не рассматривается как строка текста еще команды).

Другая форма:

@echo off 
set "IniCatching=%date:~0,4%%date:~5,2%%date:~8,2%-%time:~0,2%%time:~3,2%%time:~6,5%" 
set theFile=%~n0_%IniCatching%.txt 
set "tasklistinst=tasklist /fi ^"SessionName eq services^" ^| find /I ^"Tomcat^" ^| find /I ^".exe^"" 
echo "echo..">>%theFile% 
echo tasklist:>>%theFile% 
echo "inst..">>%theFile% 
echo %tasklistinst%>>%theFile% 


I have in the file (wServ_wFiles_20141122-170025.07.txt): 

"echo.." 
tasklist: 
"inst.." 

In my prompt (not in my file) I have: 

tasklist /fi "SessionName eq services" | find /I "Tomcat" | find /I ".exe">>wServ_wFiles_20141122-170025.07.txt 

Like you see, the value and ">>" filename is treated like only one String.... 

, когда я пытаюсь с

echo "%tasklistinst%">>%theFile% 

У меня есть это:

FIND: Parameter format not correct 

Помогите пожалуйста ...

Я хочу, чтобы включить мой команда внутри моего файла ...

ответ

1

ли вы попробовать без echo:

%tasklistinst%>>%theFile% 
0

Почему вы хранить строку в переменной? Это не обязательно, и, как правило, самым простым способом является:

@echo off 
set "IniCatching=%date:~0,4%%date:~5,2%%date:~8,2%-%time:~0,2%%time:~3,2%%time:~6,5%" 
set theFile=%~n0_%IniCatching%.txt 
(
echo Before 
echo tasklist /fi "SessionName eq services" ^| find /I "Tomcat" ^| find /I ".exe" 
echo After 
) >> "%theFile%" 
Смежные вопросы