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

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

Автор: bomzzz
Дата сообщения: 30.09.2010 14:39
Mark_Titov
http://home.mnet-online.de/horst.muc/main.htm
WBAT
Автор: Mark_Titov
Дата сообщения: 30.09.2010 15:23
А как прикрутить в этом коде в TITLE код выполнения в процентах..?

Код: <nul Set /p X= Ы
for /l %%i in (0,1,3) do call:%%i && <nul Set /p X= Ы
echo ] DONE
goto:eof

:0
1>nul ping -n 2 localhost
goto:eof

:1
1>nul ping -n 2 localhost
goto:eof

:2
1>nul ping -n 4 localhost
goto:eof

:3
1>nul ping -n 2 localhost
goto:eof
Автор: 01MDM
Дата сообщения: 30.09.2010 17:08
Mark_Titov

Цитата:
Что бы каждый пункт выполнения равнялся 2%...

50 задач? В каждом блоке на примере ":0":

Код:
:0
1>nul ping -n 3 localhost
set /a title+=2
title %title%%%
goto:eof
Автор: Mark_Titov
Дата сообщения: 30.09.2010 18:08
01MDM, благодарю...!
Автор: wolf0425
Дата сообщения: 30.09.2010 19:31
Mark_Titov а ещё лучше развернуть цикл и выкинуть call/goto:eof нафиг, просто по линейному коду после каждой стадии понаставить обновления прогресбара/тайтла
Автор: Mark_Titov
Дата сообщения: 30.09.2010 20:15
wolf0425, логически понял, а практически можно пример, если не затруднит...
Автор: 01MDM
Дата сообщения: 30.09.2010 20:31
wolf0425

Цитата:
просто по линейному коду после каждой стадии понаставить обновления прогресбара/тайтла

Согласен, нефиг циклы городить.

Автор: Free_Soft
Дата сообщения: 30.09.2010 20:52
Вот вопрос: как команду

Код: cscript //nologo %SystemRoot%\system32\slmgr.vbs -dlv
Автор: bomzzz
Дата сообщения: 30.09.2010 20:53
ECHO OFF
COLOR 9F
CLS
set r=cscript //nologo %SystemRoot%\system32\slmgr.vbs -dlv
echo %r%`
pause
Автор: Free_Soft
Дата сообщения: 30.09.2010 20:56
ммм... неправильно выразился: РЕЗУЛЬТАТ выполнения этой команды имелось ввиду. Сорри
Автор: bomzzz
Дата сообщения: 30.09.2010 20:59
а какой у нее результат
Автор: Free_Soft
Дата сообщения: 30.09.2010 21:02
статус активации Windows. Результат примерно такой:


Код: Software licensing service version: 6.1.7601.16562

Name: Windows(R) 7, Ultimate edition
Description: Windows Operating System - Windows(R) 7, OEM_SLP channel
Activation ID: XXXXXXX-69a9-4af7-af36-ff3d12b6b6c8
Application ID: XXXXXXX-d682-4d71-983e-d6ec3f16059f
Extended PID: XXXXX-00178-926-600173-02-1049-7601.0000-2682010
Installation ID: 0074014362541969715655260032811834552334160993531XXXXX
Processor Certificate URL: http://go.microsoft.com....
Machine Certificate URL: http://go.microsoft.com....
Use License URL: http://go.microsoft.com/fwlink....
Product Key Certificate URL: http://go.microsoft.com....
Partial Product Key: XXXXX
License Status: Licensed
Remaining Windows rearm count: 2
Trusted time: 24.11.2010 5:21:33
Автор: bomzzz
Дата сообщения: 30.09.2010 21:04
а перенос строки как
Автор: Free_Soft
Дата сообщения: 30.09.2010 21:06

Цитата:
а перенос строки как

В смысле? Скрипт отрабатывает эту команду вот в таком виде. А мне для месджбокса надо в конец строки дописать "`"
Автор: bomzzz
Дата сообщения: 30.09.2010 21:10
то есть тебе надо вывести это в месадж бокс понятно

Добавлено:
у меня вбс скрипты отключены да и твоего скрипта нету, так что я сделал на примере команды дир

Цитата:

ECHO OFF
COLOR 9F
CLS
setlocal enabledelayedexpansion
for /f "delims=*" %%I in ('dir') do (
set a=!a!%%I`
)
MsgBox-.EXE ~!a!~FreeSoft~64


Добавлено:


Добавлено:

Цитата:

ECHO OFF
COLOR 9F
CLS
setlocal enabledelayedexpansion
for /f "delims=*" %%I in (my.txt) do (
set a=!a!%%I`
)
MsgBox-.EXE ~!a!~FreeSoft~64



Добавлено:
проблемы будут если в тексте есть восклицательные знаки. лучше сделать без енабле локал

Добавлено:

Цитата:

ECHO OFF
COLOR 9F
CLS
for /f "delims=*" %%I in (my.txt) do (
set b=%%I
call :next
)
MsgBox-.EXE ~%a%~FreeSoft~64
goto :EOF
:next
set a=%a%%b%`


Добавлено:

Цитата:

ECHO OFF
COLOR 9F
CLS
for /f "delims=*" %%I in ('cscript //nologo %SystemRoot%\system32\slmgr.vbs -dlv') do (
set b=%%I
call :next
)
MsgBox-.EXE ~%a%~FreeSoft~64
goto :EOF
:next
set a=%a%%b%`
Автор: Free_Soft
Дата сообщения: 30.09.2010 21:56
bomzzz
Спасибо. Думаю, что воскл. знаков там не будет. остановился на конструкции

Код: setlocal enabledelayedexpansion
for /f "delims=*" %%I in (my.txt) do (
set a=!a!%%I`
)
Автор: bomzzz
Дата сообщения: 30.09.2010 21:59
первую строку легко опустить используя
SKIP=1

Добавлено:
чтоб опустить две последние надо использовать IF прицепившись к каконибудь условию
Автор: ComradG
Дата сообщения: 30.09.2010 22:07
bomzzz
Напредыдущей странице обсуждалась графика в консоли. Но в этом-то ничего удивительного нет, ведь можно даже соорудить примитивную анимацию, например, вращающаяся палочка:
Код: @echo off
:loop
echo \ && cls
echo ^| && cls
echo / && cls
echo - && cls
goto:loop
Автор: Free_Soft
Дата сообщения: 30.09.2010 22:10
bomzzz
а куда скип засунуть?
Автор: bomzzz
Дата сообщения: 30.09.2010 22:15
for /f "delims=* skip=1" %%I in (my.txt) do (
Автор: Free_Soft
Дата сообщения: 30.09.2010 22:19

Цитата:
чтоб опустить две последние надо использовать IF прицепившись к каконибудь условию

если можно поконкретнее для тупых...
Автор: bomzzz
Дата сообщения: 30.09.2010 22:21
ну например если количесвто строк всегда одинаковое можно считать обработанные строки и когда дойдешь до последней нужной окончить добавлять строки в переменнную.

или например если не нужные строки содержат какой то элемент не входящитй в предъидущие
Автор: Free_Soft
Дата сообщения: 30.09.2010 22:26
Две последние всегда состоят из

Код: ---------------------------------------------------------
---------------------------------------------------------
Автор: bomzzz
Дата сообщения: 30.09.2010 22:29
if not %b:~0,1%=- set a=%a%%b%`
или
if not %b%=--------------------------------------------------------- set a=%a%%b%`

Автор: qwertyuiopa
Дата сообщения: 30.09.2010 22:36

Цитата:
Добрый день!
Помогите справиться с написанием bat файлов на прием и на отправку файлов на Ftp. ftp-менеджер в данном случае не актуален.

Файл(ы) М:\price\*.xls
Отправить на ftp xx.xx.xx.xx в каталог price
Сверить отправленный файл(ы) на ftp с тем(и) что в М:\price\
И если происходит совпадение (размер, контрольная сумма) то этот файл(ы) можно удалить c диска.

Задача второго bat файла, скачать файл(ы) с ftp.
Скачать zakaz/*.rar
Сохранить в M:\zakaz\
Провести сравнение, и если скачивание файла произошло успешно. То его можно удалить с ftp


Делаю для загрузки так:

1.txt:
login
passw
cd price
mput М:\price\*.xls
quit

2.bat:
@Echo Off
ftp -s:1.txt -i xx.xx.xx.xx

Как сверить отправленный файл(ы) на ftp с тем(и) что в М:\price\
И если происходит совпадение (размер, контрольная сумма) то этот файл(ы) можно удалить c диска.
Автор: Free_Soft
Дата сообщения: 30.09.2010 22:37
чет не фурычит... Но символ - одиночный может в тексте появляться
Автор: bomzzz
Дата сообщения: 30.09.2010 22:39
наверно пробел еще в конце стоит или в начале.
а два дефиса? но это чисто чтоб строка короче была
Автор: ComradG
Дата сообщения: 30.09.2010 22:40

Цитата:
(размер, контрольная сумма)

В случае с размером (а он имеет значение) запросить вывод команды dir, в случае с хешами - использовать список предварительно саставленных сумм.

Добавлено:
bomzzz, Free_Soft
Может стоит задуматься об использовании tail?
Автор: bomzzz
Дата сообщения: 30.09.2010 22:43
ета че за таил такой? да ему давно пора на вбс скрипты переходить у него задачи уже за рамки батников выходят
Автор: Free_Soft
Дата сообщения: 30.09.2010 22:44

Цитата:
а два дефиса? но это чисто чтоб строка короче была

где? Пробелы все убрал. все равно вылетает

Страницы: 12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667

Предыдущая тема: Windows 7 Starter


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