Ru-Board.club
← Вернуться в раздел «Microsoft Windows»

» Задачи на bat-файлах 5

Автор: z1riser
Дата сообщения: 20.05.2008 14:30
Joolz, спасибо, Вы лучший
Автор: Joolz
Дата сообщения: 20.05.2008 14:38
z1riser
Пожалуйста!
Я не лучший, я только чусь. Рулят здесь зебра и покемон.
Автор: BlackCerber
Дата сообщения: 20.05.2008 15:24
Помогите с задачей пожалуйста:

содержимое каталога C:/temp (например)
надо упаковать в архив (можно zip, можно стандартным архиватором windows)
проверить после упаковки "читаемость" архива (желательно)
Перенести данный архив в каталог D:/BackUp

Архив должен иметь имя даты (ДД.ММ.ГГГГ)

Реально ли сделать это батником и vbs ?
Если да, то как???
P.S.: Очень надо!!!! Да и самому интересно стало... для пополнения знаний.
Автор: satysaty
Дата сообщения: 20.05.2008 15:30
Добро время суток, подскажите как мне запустить программу с задержкой в 40сек находящуюся на рабочем столе?
Требуется запускать прогу при загрузке ОС.
Автор: king_stiven
Дата сообщения: 20.05.2008 15:49
BlackCerber
Всё это вроде rar делает.
Автор: BlackCerber
Дата сообщения: 20.05.2008 16:01

Цитата:
Всё это вроде rar делает

Это надо чтобы делалось ночью в определённое время когда БАЗА 1С не используется.
Батник можно хоть в планировщик засуть...

Добавлено:

Цитата:
Всё это вроде rar делает

Это надо чтобы делалось ночью в определённое время когда БАЗА 1С не используется.
Батник можно хоть в планировщик засуть...
Автор: king_stiven
Дата сообщения: 20.05.2008 16:15
BlackCerber
Почитай справку к консольная версии rar , там подробно описаны команды для батника. Ещё есть хорошее описание на блоге экслера "как делать бэкапы по ночам". По БАЗА 1С очень много батников в инете встречал.
Автор: KapralBel
Дата сообщения: 20.05.2008 16:52
BlackCerber
Могу в добавок подкинуть как заодно переиндексировать базу 1С
Автор: alexvsm
Дата сообщения: 21.05.2008 05:58
KapralBel

Цитата:
Могу в добавок подкинуть как заодно переиндексировать базу 1С

Было бы интересно узнать.
Автор: igor_andreev
Дата сообщения: 21.05.2008 06:37
alexvsm

Цитата:
Было бы интересно узнать.

Ну так в гугле набери "переиндексировать базу 1С", сразу и узнаешь
Автор: JohnRD
Дата сообщения: 21.05.2008 08:23
king_stiven Joolz

спасибо большое, меня хватило на удалить, создать папку снова
Автор: satysaty
Дата сообщения: 21.05.2008 08:44
Доброе утро, подскажите мне требуется запускать файл лежащий: C:\Documents and Settings\Администратор\Рабочий стол\имя файла
С задержкой в 40 секунд после загрузки ОС. Как осуществить на батниках?
Автор: 01MDM
Дата сообщения: 21.05.2008 10:55
satysaty
Файл или программу?
Батник в автозагрузку.

Код:
@echo off
ping -n 41 localhost >nul

:: Если зарегистрированный тип файла
"C:\Documents and Settings\Администратор\Рабочий стол\имя файла"

:: Если программа
start "" "C:\Documents and Settings\Администратор\Рабочий стол\имя файла"
Автор: tolyn77
Дата сообщения: 21.05.2008 15:49
Привет, Всем
подскажите как из bat-ника определить какая операционка?
а можно из командной строки переопределить ссылку на "Мои документы" с рабочего стола на мой путь?
заранее благодарен
Автор: KapralBel
Дата сообщения: 21.05.2008 16:12
tolyn77
Ver>Version.txt
и проверяй на совпадения номеров версий
5.2 - Win2003
5.1 - WinXP
Автор: half15
Дата сообщения: 21.05.2008 18:45
Помогите плиззз!
Нужен bat файл, который выводит на экран имя файла (из текущего каталога), который не изменялся дольше всех.
Автор: king_stiven
Дата сообщения: 21.05.2008 19:33
half15

Код: for /f "tokens=*" %%c in ('dir *.* /b /O:D /T:W /a:-d') do (
echo %%c
goto :eof
)
Автор: half15
Дата сообщения: 21.05.2008 20:01
king_stiven
Спасибо БОЛЬШОЕ
Автор: tolyn77
Дата сообщения: 22.05.2008 08:30
KapralBel
если мне нужно проверять 9x/nt/w2k/xp/w2k3?
Автор: 01MDM
Дата сообщения: 22.05.2008 08:56
tolyn77

Не знаю, будет это работать на 9* или нет

Код:
@echo off
set rem=rem
if not "%OS%"=="Windows_NT" goto 98
set rem=
%rem% for /f "tokens=2 delims==" %%i in ('netsh diag show os /v ^| findstr /i "caption"') do (
%rem%     set "_OS=%%i"
%rem% )

goto result

:98
set %_OS%=95-Me

:result
echo %_OS%
Автор: KapralBel
Дата сообщения: 22.05.2008 10:05
01MDM
На 98-й я таким образом проверял

tolyn77
Ну посмотри, какая ОС какую версию возвращает и доработай
Просто у меня под рукой или ХР или 2003
Автор: sVx
Дата сообщения: 22.05.2008 10:57
tolyn77


Код:
@ECHO OFF

:: OS checks
VER | FIND /I "95" > NUL
IF %ERRORLEVEL%==0 goto :WIN95
VER | FIND /I "98" > NUL
IF %ERRORLEVEL%==0 goto :WIN98
VER | FIND /I "NT" > NUL
IF %ERRORLEVEL%==0 goto :WINNT
VER | FIND /I "2000" > NUL
IF %ERRORLEVEL%==0 goto :WIN2K
VER | FIND /I "ME" > NUL
IF %ERRORLEVEL%==0 goto :WINME
VER | FIND /I "XP" > NUL
IF %ERRORLEVEL%==0 goto :WINXP
VER | FIND /I "3790" > NUL
IF %ERRORLEVEL%==0 goto :WIN2K3

ECHO Unknown OS
goto :eof

:WIN95
ECHO WIN95 commands go here
goto :eof

:WIN98
ECHO WIN98 commands go here
goto :eof

:WINNT
ECHO WINNT commands go here
goto :eof

:WIN2K
ECHO WIN2K commands go here
goto :eof

:WINME
ECHO WINME commands go here
goto :eof

:WINXP
ECHO WINXP commands go here
goto :eof

:WIN2K3
ECHO WIN2K3 commands go here
goto :eof

:EOF
Автор: Joolz
Дата сообщения: 22.05.2008 11:22
sVx
В 2003 не получится, там выводится Microsoft Windows и версия.
Для XP и 2003 можно получить еще и так:

Код: reg query "\\RemotePC\HKLM\Software\Microsoft\Windows NT\CurrentVersion" /v "ProductName"
Автор: half15
Дата сообщения: 22.05.2008 11:43
А как можно определить через bat файл сколько символов, слов и строк в текстовом файле?
Автор: sVx
Дата сообщения: 22.05.2008 12:26
Joolz

Цитата:
В 2003 не получится, там выводится Microsoft Windows и версия.

тогда так:

Код:
VER | FIND /I "3790" >NUL
IF %ERRORLEVEL%==0 goto :WIN2K3
Автор: KapralBel
Дата сообщения: 22.05.2008 12:43
sVx
Ищи по первым символам (5.2. или 5.1.) а не последним
Автор: inock
Дата сообщения: 22.05.2008 12:57
Спотыкнулся на ровном месте. Ситуация такая:

C:\admin>net share

Общее имя Ресурс Заметки
-----------------------------------------------------------------------
E$ E:\ Стандартный общий ресурс
IPC$ Удаленный IPC
D$ D:\ Стандартный общий ресурс
print$ C:\WINDOWS\system32\spool\drivers
Драйверы принтеров
C$ C:\ Стандартный общий ресурс
ADMIN$ C:\WINDOWS Удаленный Admin
F$ F:\ Стандартный общий ресурс
films E:\films
Папка для опытов
E:\Папка для опытов
Команда выполнена успешно.

============================================

Обратите внимание, что строка, описывающая "Папка для опытов" разбита надвое (кстати как и строка описывающая "Драйверы принтеров"). Соответственно, команда

FOR /F "tokens=1,1" %%i IN ('net share ^| find /i ":" ^| find /i /v "$"') do ...

отрабатывает некорректно. В одном случае мы получим обработку ресурса "films" во втором - обработку ресурса "E:\Папка" (что вызовет ошибку).

Как выйти из этого затруднительного положения с длинными именами файлов (и сетевых ресурсов), содержащими пробел?


PS: Блин. С "tokens=*" мы тоже ничего путного не получаем:

C:\admin\PsTools>net share "E:\Папка для опытов " /delete
Не удалось найти соответствующий общий ресурс. Удаление не выполнено.

куча завершающих пробелов не в тему...
Автор: igor_andreev
Дата сообщения: 22.05.2008 15:04

Цитата:
Как выйти из этого затруднительного положения с длинными именами файлов (и сетевых ресурсов), содержащими пробел?

Можно в него просто не попадать , не называя расшаренные ресурсы именами длиннее 12 символов, как собственно сама windows и рекомендует при расшаривании папки. Назови "Папка для опытов" -> Experiments, а "Драйверы принтеров" -> Prndrivers да и все, а в описании сетевого ресурса добавь по русски с пробелами что хошь.
Автор: lanselotideo1111
Дата сообщения: 22.05.2008 16:21
Стыдно признаться. но есть проблема с cmd.
Есть один файл в котором в столбик записано несколько строк вида:
12050999.111
13050999.111
14050999.111
...................
90050999.111
Необходимо открыть этот файл и убрать в каждой строчке три последних символа и вывести результат в новый файл:
12050999
13050999
14050999
...................
90050999

Помогите решить задачу, пожалуйста.
Автор: igor_andreev
Дата сообщения: 22.05.2008 16:41
lanselotideo1111
Точка - тоже символ(и пробел в конце строки тоже, если есть), убирать уже четыре надо

Код:
@echo off
for /f "tokens=* delims=" %%a in (test.txt) do call :label "%%a"
goto :eof

:label
set "line=%~1"
set "line=%line:~0,-4%"
echo %line%>>new.txt

Страницы: 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566

Предыдущая тема: Сброс пароля администратора


Форум Ru-Board.club — поднят 15-09-2016 числа. Цель - сохранить наследие старого Ru-Board, истории становления российского интернета. Сделано для людей.