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

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

Автор: king_stiven
Дата сообщения: 20.11.2009 11:31
mouser
Ну тогда создай список файлов которые скопировались точно. это надо смотреть команду mget fringe*
Автор: mouser
Дата сообщения: 20.11.2009 11:43
king_stiven
список не известен ((
Автор: king_stiven
Дата сообщения: 20.11.2009 12:06
mouser
mget /?
Автор: mouser
Дата сообщения: 20.11.2009 12:18
king_stiven
такого нет в ftp


ДРУГИЕ СПОСОБЫ ЕСТЬ .. КРОМЕ ПРЕДЛОЖЕНОГО ??
Автор: webms
Дата сообщения: 20.11.2009 13:12
омогите люди добрые, как написать батни к чтоб из текстового файла с каждой строки брал ссылки типа:

_magne:txt=urn:tree:tiger:7KUVVUEJUFWLE4F4_test1.avi
_magne:txt=urn:tree:tiger:7KUVVUEJUFWLE4F4_test2.av

и в другой тектовой файл сохранял ссылки типа:

_[ulr=magne:txt=urn:tree:tiger:7KUVVUEJUFWLE4F4_test1.avi]test1[/url]
_[ulr=magne:txt=urn:tree:tiger:7KUVVUEJUFWLE4F4_test2.avi]test2[/url]

За ранее благодарен!!!
Автор: wolf0425
Дата сообщения: 20.11.2009 13:17
mouser ну значит проси у сервера список файлов, выходи из ftp, конвертируй список в новую серию команд скрипта и запускай с ним заново для поименной скачки/удаления.

а rename в ftp поддерживает * ?
может можно поменять расширение, скачать по новой маске, удалить по ней же и переименовать скачанные обратно?

Добавлено:
webms наверно так:
sed -rn "s/^_(magne.+_)(.+)(\..{1,3})$/_[ulr=\1\2\3]\2[\/url]/gp" file1 >file2
Автор: webms
Дата сообщения: 20.11.2009 13:33
wolf0425
огромное спасибо за ответ..

только. или у меня руки кривые, или что то не то сделал, подскажите как настроить пожалуста, у меня выдает отшибку

http://clip2net.com/clip/m27555/1258716763-clip-49kb.png
Автор: wolf0425
Дата сообщения: 20.11.2009 13:55
webms sed.exe - это программа такая, в комплект виндов не входит, берется где-то по ссылкам в шапке, у тебя батник жалуется что не смог ее найти.
Если надо без нее, на командах чистой системы - то вроде тоже можно сделать, только сейчас с временем туго. Или жди или найди sed
Автор: webms
Дата сообщения: 20.11.2009 14:05
возможно вам я уже надоел, но помогите плз, нашел потавил sed.exe

http://clip2net.com/clip/m27555/1258718688-clip-54kb.png

файл пустой (file2.txt) и ошибок нет некаких
Автор: wolf0425
Дата сообщения: 20.11.2009 14:08

Цитата:
файл пустой (file2.txt) и ошибок нет некаких
может у тебя в списке пробел перед концом строки, а мне его не видно было?

Код: sed -rn "s/^_(magne.+_)(.+)(\.[^ ]{1,3}) *$/_[ulr=\1\2\3]\2[\/url]/gp" file1.txt > file2.txt
Автор: webms
Дата сообщения: 20.11.2009 14:16
ААААА!!!!...СПАСИБО...ЗАРАБОТАЛО!!!...
Автор: mouser
Дата сообщения: 20.11.2009 14:32
wolf0425
как полученые файл обрезать 3 верхние строки, 1-ну внизу и есть пустые переходы на строки (ENTER) как всё это из файла убрать ???
Автор: king_stiven
Дата сообщения: 20.11.2009 14:37
mouser
sed
Удалить первые 10 строк в файле:
sed "1,10d"

Удалить последнюю строку в файле:
sed "$d"

Удалить ВСЕ пустрые строки из файла (эмуляция "grep '.' "):
Версия 1: sed "/^$/d"
Версия 2: sed "/./!d"
Автор: Ortios
Дата сообщения: 20.11.2009 22:46
Посвящается всем любителям sed,
Хотите узнать как грамотно публиковать свой адрес в нете?

Код: echo esrctee@amlic.mo | sed -r "s/(.)(.)/\2\1/g" >readme.txt
Автор: egor23
Дата сообщения: 21.11.2009 10:00
CMDOW @ /HID
@ - текущее окно
как CMDOW определяет текущее окно?
Автор: king_stiven
Дата сообщения: 21.11.2009 11:57
egor23
Title y
cmdow "y" /HID
Автор: egor23
Дата сообщения: 21.11.2009 13:38
king_stiven

Цитата:
Title y
cmdow "y" /HID

имеете ввиду,
что cmdow определяет текущее окно через поиск по заголовку окна?
Автор: king_stiven
Дата сообщения: 21.11.2009 14:45
egor23
значит что cmdow скроет окно с заголовком y
Автор: mrbasic
Дата сообщения: 21.11.2009 21:46
Подскажите пожалуйста как реализовать задачу построчного чтения текстовогофайла с запоминанием строки. Есть файлс именами компьютеров. есть скрипт позволяющий пинговать компьютеры по списку.

Set /a ind+=1
for /f " tokens=%ind%" %%s IN (%file_name%) DO (
@echo %%s
Set host_name=%%s
)
Ping -n 1 %host_name%>Nul

If "%ERRORLEVEL%" equ "1" ( Set Stat_us="No connected"
) else (
Set Stat_us="Connected"
)

но скрипт срабатывает если имена в файле перечислены в строку через пробел. Например
Computer1 Computer2 Computer3 Computer4

Как можно доработать скрипт чтоб ыон обрабатыват файл со списком вида
Computer1
Computer2
Computer3
Computer4
Автор: Ortios
Дата сообщения: 21.11.2009 22:44
mrbasic

Цитата:
Как можно доработать скрипт


Код: Set /a ind+=1
for /f " tokens=*" %%s IN (%file_name%) DO (
@echo %%s
Set host_name=%%s
)
Ping -n 1 %host_name%>Nul

If "%ERRORLEVEL%" equ "1" ( Set Stat_us="No connected"
) else (
Set Stat_us="Connected"
)
Автор: mrbasic
Дата сообщения: 21.11.2009 23:10
Пока получилось при помощи утилиты SED

Set /a ind+=1
for /F "usebackq delims==" %%i IN (`sed %ind%q complist.lst`) DO set host_name=%%i
@echo %host_name%
)
if %host_prev% equ %host_name% GOTO EXIT
Ping -n 1 %host_name%>Nul

If "%ERRORLEVEL%" equ "1" ( Set Stat_us="No connected"
) else (
Set Stat_us="Connected"
)

И все это в цикле с проверкой совпадения предпоследнего и последнего значения параметра host_name.
Автор: Vikkywulf
Дата сообщения: 21.11.2009 23:51
Можно ли и как, получить n переменных внутри цикла с целью их дальнейшего использования вне этого цикла? Например:
for %%i in (*.txt) do (
set one=%%i
некие действия
)

Допустим в папке 5 фалов с расширением *.txt? требуется получить пять переменных -
%one%, %two% и т.д. (название переменных не имеет значения, лишь бы каждое было уникальным). Возможно такое или я слишком многого хочу?
Автор: Ortios
Дата сообщения: 21.11.2009 23:53
mrbasic
Фу, блин, я и не понял что ты хочешь? Сейчас уже сил нет, слишком поздно.
Автор: king_stiven
Дата сообщения: 22.11.2009 00:02
mrbasic

Код: for /f "tokens=*" %%s IN (%file_name%) DO (
@echo %%s
Ping -n 1 %%s>Nul
If "%ERRORLEVEL%" equ "1" (
Set Stat_us="No connected"
) else (
Set Stat_us="Connected"
)
)
Автор: wolf0425
Дата сообщения: 22.11.2009 00:18
Vikkywulf

Цитата:
Можно ли и как, получить n переменных внутри цикла с целью их дальнейшего использования вне этого цикла?


Код: set n=0
for %%i in (*.txt) do (
    set /a n+=1
    call set file%%n%%=%%i
    rem чего-то еще
)
set file
Автор: mrbasic
Дата сообщения: 22.11.2009 15:48
king_stiven

Спасибо за совет буду пробовать
Автор: wolf0425
Дата сообщения: 22.11.2009 17:13

Цитата:
for /f "tokens=*" %%s IN (%file_name%) DO (
@echo %%s
Ping -n 1 %%s>Nul
If "%ERRORLEVEL%" equ "1"

вроде совсем недавно тут разбирали почему If ERRORLEVEL 1 в этом месте работать будет, а If "%ERRORLEVEL%" equ "1" - нет



Автор: king_stiven
Дата сообщения: 22.11.2009 20:17
mrbasic
Да, я практически никогда не использую %ERRORLEVEL%, только
If (not) ERRORLEVEL 1
Автор: VisioNRU
Дата сообщения: 22.11.2009 21:42

Цитата:
Доброго времени суток!!!!
Нужна помощь! есть инсталлер  его необходимо запускать из батника
пишу  
 
call %CD:~0,2%\путь\setup.exe
 или  
start %CD:~0,2%\путь\setup.exe
или  
start .\путь\setup.exe
 
 в общем  инсталлер стартует, но потом пишет:  
Необрабатываемое исключение. установка будет прервана.
 и все. все бы ничего НО. Тут же вручную (мышью, клавой и тд) запускаю этот инсталлер и все ставится.  
 Умные мира сего, подскажите плз...  думаю что проблема в путях, (относительные,постоянные )

дубль два!!!! неужели нет даже мыслей никаких.
Автор: 01MDM
Дата сообщения: 22.11.2009 21:51
VisioNRU
Попробуй его запускать из его рабочей директории. Т.е сначала перейди в его каталог:

Код:
pushd "\Path\To\Installer's Folder"
start setup.exe
popd

Страницы: 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778

Предыдущая тема: во вкладке автозагрузка


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