2014-12-18 2 views
-5

У меня есть запрос на управление манией.Скрипт оболочки для запуска в папке

У меня есть файл exe в папке d, и файл exe должен запускаться в файле в другой папке на другом диске.

ехе путь к файлу: d: \ ноты \ ncompact.exe и он должен работать на папку E диске и обслуживание должны работать с файлами, начиная с № 1 е: \ примечания \ данные \ 1 * .nsf

пожалуйста, дайте мне сценарий для этого

Добавлено от комментариев:

@echo off 
Start D:\notes\nserver.exe -q >> D:\logs\quitDomino.txt 
pause 
net stop "Lotus Domino Server (ENotesData)" >> D:\logs\lotusservice.txt 
Pause 
echo %date% %time% >> D:\logs\updall.txt 
pause 
Start D:\notes\ncompact.exe -c -i "E:\notes\data\state\1*.nsf" >> D:\logs\bes1.txt 
echo %date% %time% >> D:\logs\bes1.txt 
pause 
Start D:\notes\ncompact.exe -c -i "E:\notes\data\state\2*.nsf" >> D:\logs\bes2.txt 
echo %date% %time% >> D:\logs\bes1.txt 
end 
+3

SO - это не место, где другие люди пишут для вас код. Что вы пробовали до сих пор, и с какой * конкретной * проблемой вам нужна помощь? –

+0

@echo от Start D: \ ноты \ Nserver.exe -q >> D: \ Logs \ quitDomino.txt пауза чистая остановка "Lotus Domino сервера (ENotesData)" >> D: \ журналы \ lotusservice.txt Пауза echo% date%% time% >> D: \ logs \ updall.txt pause Начало D: \ notes \ ncompact.exe -c -i "E: \ notes \ data \ state \ 1 * .nsf" >> D: \ logs \ bes1.txt echo% date%% time% >> D: \ logs \ bes1.txt pause Начало D: \ notes \ ncompact.exe -c -i "E: \ notes \ data \ state \ 2 * .nsf ">> D: \ logs \ bes2.txt echo% date%% time% >> D: \ logs \ bes1.txt end – Shashi

+0

это то, что я пробовал, мой код сбой при выполнении компактных файлов в папке состояния – Shashi

ответ

0

Это звучит как программа D:\notes\ncompact.exe не понимает символы.

Прошло 8 месяцев с тех пор, как я написал пакетные файлы. Однако команда for /f должна позволять вам делать то, что вы хотите.

Попробуйте это:

@echo off 
setlocal enableextensions 
Start D:\notes\nserver.exe -q >> D:\logs\quitDomino.txt 
pause 
net stop "Lotus Domino Server (ENotesData)" >> D:\logs\lotusservice.txt 
Pause 
echo %date% %time% >> D:\logs\updall.txt 
pause 

for /f %%f in (E:\notes\data\state\1*.nsf) do (Start D:\notes\ncompact.exe -c -i %%f >> D:\logs\bes1.txt) 

echo %date% %time% >> D:\logs\bes1.txt 
pause 

for /f %%f in (E:\notes\data\state\2*.nsf) do (Start D:\notes\ncompact.exe -c -i %%f >> D:\logs\bes2.txt ) 

echo %date% %time% >> D:\logs\bes1.txt 
end 

Обратите внимание, что вам может понадобиться использовать %f вместо %%f при запуске, что из командной строки вместо пакетного файла. Как я уже сказал, это было давно. Я также добавил команду setlocal enableextensions. Я не помню, если это необходимо для for /f или больше нет.

Смежные вопросы