Перейти к содержанию

Батник на удаление файла


Рекомендуемые сообщения

Здравствуйте. В общем ситуация такая, при печати из 1с-она вылетает(искал на форумах,перепробовал все варианты не помогает), помогает лишь удаление папки с временными файлами, но каждый раз при входе на удаленный сервер это папочка создается заного, можно ли написать батник, чтобы при открытии 1с удалялась эта временная папка, прошу помочь) или просто когда заходит на удаленку, сразу же удалялась эта папка, и кстати название временной папки меняется(

@FOR /D %%i in ("%userprofile%\Local settings\Application data\1C\1Cv82\????????-????-????-????-????????????") do rd /s /q "%%i"

Это будет работать?

Ссылка на комментарий

попробую спасибо

Добавлено спустя 1 минуту 50 секунд:

martinges не работает, мб я чтото не натк делаю...

Добавлено спустя 1 минуту 7 секунд:

прописал в текстовом документе rd /s /q C:\тест\1234 , сохранил в .bat, запускаю, не робит(

Ссылка на комментарий

}{OTT@БЬ)Ч

предположу что кодировка cp1251 win(ANSI) ------> тогда ни бельмеса кириличные значки не понимает и соответственно не понимает что за директория тест

попробуйте сохранить в oem 866 (у меня понимает вроде :) )

редактировал через FAR мне так удобнее :)

P.S. Проверил с кириличными путями всё пашет вроде бы....

Ссылка на комментарий

спасибо, работает, убивает)

Добавлено спустя 20 минут 53 секунды:

Добавлено спустя 2 минуты 19 секунд:

Ещеё один вопрос, название папки каждый раз меняется, как в батнике тогда мне указать name папки?=D

Ссылка на комментарий

хех сложный вопрос)) я так понимаю у тебя есть "хорошие" папки в директории и "плохие" папки...

Вариант 1. Ты знаешь по какому принципу создаются имена директорий находи закономерность, включай в маску директорий эту закономерность(главное чтобы под эту маску не попали хорошие директории) и удаляй

Вариант 2. Создай список хороших директорий, а потом удаляй все остальные директории :)

P.S. Если честно слабо соображу как через батник, но с помощью любого языка программирования достаточно быстро можно запрограммировать :)

Ссылка на комментарий

для меня это очень сложно , я не программист, да есть добрые папки а есть одна плохая) просто в той которая создается всегда количество символов одинаковое и название через тире , допустим так "b315553b-a3b4-49eb-a1fe-7677f4369a51", потом только символы меняются, а остальные папки теже, HELP)

Ссылка на комментарий

}{OTT@БЬ)Ч

Ты чуть ли не каждую неделю тут создаешь темы про печать из терминалки. У тебя стоит 2003 сервер, а печать в нем мелкософтом реализована хуже некуда. Эту проблему они лишь частично пофиксили в 2008-ом сервере. Вывод: тот, кто юзает дефолтовую систему печати Windows будет вечно страдать. Я предполагаю, что у тебя еще кое-где стоят говномамонтовые аппараты типа Canon LBP800, проблемы с которыми надо уже включать во все оффициальные виндовые руководства.

Я предлагаю решение твоей проблемы: поставь уже ScrewDrivers и забудь навсегда об этой проблеме! Установка самой проги это 20 минут + по 5 минут на каждый клиентский комп. Ничего сложного в установке нет, настройка тупо минимальна, мануалов в инете миллионы! Софтовые проблемы с принтерами на 95% самоликвидируются.

Ну или не ставь и страдай дальше. Я просто смотрю ты из тех, кто обожает наступать на одни и те же грабли годами.

Ссылка на комментарий

program Project1;

{$APPTYPE CONSOLE}

uses

SysUtils,

shellapi,

windows;

var

sr: TSearchRec;

attr: Integer;

handle:hwnd;

mpath,spath:string;

begin

try

attr := 0;

attr := faAnyFile;

mpath:='c:\temp\'; \\путь до родной директории

spath:='c:\123.bat'; \\путь до батника

if DirectoryExists(mpath) then

if FindFirst(IncludeTrailingBackslash(mpath) + '*.*', attr, SR) = 0 then

begin

repeat

if (sr.Attr = faDirectory) and (sr.Name[Length(sr.Name)] <> '.')and(sr.Name[9]='-')and \\ищем

(sr.Name[14]='-')and(sr.Name[19]='-')and(sr.Name[24]='-') then \\ злую директорию

ShellExecute(handle,'open',spath,pchar(mpath+sr.name),nil,0); \\вызываем заготовленный батник удаления

until (FindNext(sr) <> 0);

end

except

on E: Exception do

Writeln(E.ClassName, ': ', E.Message);

end;

end.

текст батника малость изменился)) будем ему передавать

rd /s /q %1

p.s. Щас сижу и думаю а нафига теперь батник :))) можно же тупо в shellexecute всю команду передать) Всё из-за тебя Хотабыч)) зациклился я на батнике)))

P.P.S. логика поиска по твоим словам тире всегда стоят на своих позициях) сырец вот он меняй как хочешь) и не кидайтесь тапками как смог так и написал)))

Ссылка на комментарий

Пожалуйста, войдите, чтобы комментировать

Вы сможете оставить комментарий после входа в



Войти
  • Последние посетители   0 пользователей онлайн

    • Ни одного зарегистрированного пользователя не просматривает данную страницу
×
×
  • Создать...