#1 20.01.06 14:02
опять вопрос про batники
написвал скрипт, который вручную нормально работает.... вроде.
создал задание при помощи schtasks
так вот.. при запуске скприпта из командной строки, я не вижу никаких результатов...
(хотя в скрипте специально вставил pause - чтобы видеть ход выполнения команд)
не подскажите, где может быть косяк???
Offline
#3 20.01.06 14:48
Re: опять вопрос про batники
писал его сам.. не смейтесь, если корявый.
cmd /c echo 134
cmd /c echo 154
cmd /c echo 54
cmd /c pause
cmd /c echo Deleting files *.avi, *.mpeg *.jpg *.bmp *.jpeg
cmd /c pause
cmd /c for /R c:\ %%f in (*.avi *.mpeg *.wav *.jpg *.bmp *.jpeg *.asx *.wma *.wpl *.m3u *.pls *.) do del "%%f" /f /q
cmd /c echo Erasing directory - Student/Мои документы.
cmd /c pause
cmd /c for /R "C:\Documents and Settings\student\Мои документы" %%f in (*.*) do del "%%f" /f /q
впринцыпе если выполняешь вручную его, то cmd /c - вовсе необязательно.
Добавлено 20.01.06 14:49:
первые 4 строчки скрипта не нужны:))
правильный:
cmd /c echo Deleting files *.avi, *.mpeg *.jpg *.bmp *.jpeg
cmd /c pause
cmd /c for /R c:\\ %%f in (*.avi *.mpeg *.wav *.jpg *.bmp *.jpeg *.asx *.wma *.wpl *.m3u *.pls *.) do del "%%f" /f /q
cmd /c echo Erasing directory - Student/Мои документы.
cmd /c pause
cmd /c for /R "C:\\Documents and Settings\\student\\Мои документы" %%f in (*.*) do del "%%f" /f /q
Добавлено 20.01.06 14:51:
и странно... в третьей строчке появился второй обратны слеш после ..
/R c:\\\\ - у меня один слэш
Offline
#4 20.01.06 15:06
Re: опять вопрос про batники
про.,
Иногда лучше жевать, чем говорить.
Offline
#5 20.01.06 15:17
Re: опять вопрос про batники
Оскорбленный про, видимо, решил перестать засорять ветку бессмысленными сабжами, и написать что-то зело осмысленное, чтоб все, блин, припухли просто. Однако одного желания мало, нужно еще хотя бы эту ветку читать:
sav написал(а):
cmd /c - вовсе необязательно
Offline
#10 22.01.06 03:40
Re: опять вопрос про batники
раз пошла такая дискуссия про cmd, мож кто знает подсобит...
есть две строки:
set STR1=C:\your\banny\wrote
set STR2=С:\your
каким образом можно получить строку STR1 - STR2 ( \banny\wrote )
PS: уровень вложенности папок никак не контролируется и может варьироваться, так что использование for /f "tokens=" не выход
Исправлено Fatboy (22.01.06 03:41)
Offline
#11 22.01.06 15:34
#12 22.01.06 16:36
Re: опять вопрос про batники
а это зачем тебе?
это нужно для инсталлятора Inno Setup, а конкретно для составления списка упаковываемых файлов.
вручную составлять такой список - этож чикануться можно, пусть скрипт поработает :)
во общем, имея полный путь до файла на диске (STR1), нужно получить путь до него относительно пути STR2
мобыть пойдет "cd ..\..\.."
вряд ли... уровень вложенности папок может варьироваться, поэтому скрипт должен работать с любыми из них. К тому же мне этот путь надо сохранить в переменную, а не просто перейти на него.
Offline
#13 22.01.06 21:21
#14 22.01.06 21:38
Re: опять вопрос про batники
в tree вывод не такой, какой мне нужен.
вообще-то список файлов я получаю :)
вот таким скриптом
Код: bat:
SET PATH=c:\temp for /R %PATH% %%f in (*.*) do @echo %%f >> list.txt
но нужен еще один список, в формате
STR1 - STR2 ( \banny\wrote )
не могу пока допетрить...
Исправлено Fatboy (22.01.06 23:15)
Offline

