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

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

Автор: Mr_Hat
Дата сообщения: 03.04.2011 18:33
01MDM

Win 7 x64


Цитата:

C:\Users\>wmic win32_videocontroller get * /value
win32_videocontroller - Alias not found.

C:\Users\>wmic win32_videocontroller get videoprocessor
win32_videocontroller - Alias not found.


Win XP Pro


Цитата:

C:\Documents and Settings\Администратор>wmic win32_videocontroller get * /value
win32_videocontroller - Псевдоним не найден.

C:\Documents and Settings\Администратор>wmic win32_videocontroller get * /value
win32_videocontroller - Псевдоним не найден.

C:\Documents and Settings\Администратор>


Добавлено:
01MDM

Win 7 x64


Цитата:

C:\Users\>wmic win32_videocontroller get * /value
win32_videocontroller - Alias not found.

C:\Users\>wmic win32_videocontroller get videoprocessor
win32_videocontroller - Alias not found.


Win XP Pro


Цитата:

C:\Documents and Settings\Администратор>wmic win32_videocontroller get * /value
win32_videocontroller - Псевдоним не найден.

C:\Documents and Settings\Администратор>wmic win32_videocontroller get * /value
win32_videocontroller - Псевдоним не найден.

C:\Documents and Settings\Администратор>
Автор: 01MDM
Дата сообщения: 03.04.2011 18:59
Mr_Hat

Код:
wmic path win32_videocontroller get * /value
Автор: SuperKolobok
Дата сообщения: 03.04.2011 20:14
01MDM
спасибо за наводку на WMI !
вот эта штука для этого рулит http://www.microsoft.com/downloads/en/details.aspx?FamilyID=2CC30A64-EA15-4661-8DA4-55BBC145C30E

плохо только что эта штука
wmic path win32_videocontroller get AdapterCompatibility
Не работает при НЕустановленных драйверах видеокарты......
Автор: stoun
Дата сообщения: 04.04.2011 07:51
Доброе время суток. Возникла необходимость сделать скрипт для передачи файла раз в сутки по фтп, получилось вот такого плана:
------------
@echo off
echo user anonymous> ftp.dat
echo 1@.ru>> ftp.dat
echo bin>> ftp.dat
echo put %1>> ftp.dat
echo quit>> ftp.dat
ftp -n -s:ftp.dat 192.168.1.100
del ftp.dat
------------

тестировал на локальном ftp для проверки....вроде бы все работает только почему-то файл не заливается...вот что происходит при исполнении файла:
--------------
e:\f.bat 1.txt
Связь с 192.168.1.100.
220 Microsoft FTP Service
ftp> user anonymous
---> USER anonymous
331 Anonymous access allowed, send identity (e-mail name) as password.

---> PASS 1@.ru
230 Anonymous user logged in.
ftp> binary
---> TYPE I
200 Type set to I.
ftp> cd /
---> CWD /
250 CWD command successful.
ftp> put 1.txt
1.txt: Lрщы эх эрщфхэ
ftp> quit
---> QUIT
221
----------
в строке после 1.txt непонятные "иероглифы" и файл не заливается( пробовал по разному иероглифы одни и те же.....походу гдето косяк понять не могу только где.....(
Автор: res2001
Дата сообщения: 04.04.2011 07:52
SuperKolobok

Цитата:
вот эта штука для этого рулит

Спасибо за утилиту!

Добавлено:
stoun
Смени кодировку в начале батника на 1251 - "иероглифы" должны стать нормальными буквами:

Код: @echo off
>nul chcp 1251
> ftp.dat (echo user anonymous
echo 1@.ru
echo bin
echo put %1
echo quit
)
...
Автор: stoun
Дата сообщения: 04.04.2011 08:49
спс была ошибка файл не найден....нужно было полностью путь прописать)
другой вопрос....если фтп серв находится не на стандартном порту как можно к нему подцепиться....тк если в скрипте после адреса указать порт получаю такого вида ошибку:

C:\Documents and Settings\Администратор>e:\ftp.bat
192.168.1.200:211: неизвестный узел.
ftp> user ftprz
Нет связи.
ftp> cnj25085ktn
Недопустимая команда.
ftp> bin
Нет связи.
ftp> put e:\1.txt
Нет связи.
ftp> quit


Автор: Joo1z
Дата сообщения: 04.04.2011 10:49
Всем привет. Не подскажете как в консоли перевести HEX в DEC???
А, все спасибо. Нашел http://download.sysinternals.com/Files/Hex2dec.zip
Автор: res2001
Дата сообщения: 04.04.2011 11:13
Joo1z

Код: @echo off
set /p val="Введите шестнадцатиричное значение: "
set /a "val=0x%val%"
echo %val%
Автор: Misha1989
Дата сообщения: 04.04.2011 18:08
Joo1z
Лучше как res2001 написал, зачем лишние утилиты, когда одной строкой переводится.
Автор: king_stiven
Дата сообщения: 05.04.2011 20:44
Quick Batch File Compiler, кроме этого больше нет, чтоб в exe файл делал?
Автор: Free_Soft
Дата сообщения: 06.04.2011 08:09
king_stiven
Bat_to_exe_converter например.
Автор: king_stiven
Дата сообщения: 06.04.2011 10:49
А Bat_to_exe_converter тоже криво конвертирут с временным батником как Quick Batch File Compiler или нормально?
Автор: Free_Soft
Дата сообщения: 06.04.2011 11:52

Цитата:
криво конвертирут с временным батником

что имеется ввиду под кривостью?
Автор: mp3exchanger
Дата сообщения: 06.04.2011 12:15
Будьте любезны, напишите кто-нибудь такой батник:

Имею два текстовых файла, в каждом по 6 строк.
Необходимо создать третий текстовый файл, в котором первые пять строк будут такими же как в первом файле, а шестая строка будет как шестая строка во втором файле.

Должно быть так: [more]1.txt
Код: 01
02
03
04
05
06
Автор: king_stiven
Дата сообщения: 06.04.2011 12:28

Цитата:
что имеется ввиду под кривостью?

Ексешник просто распаковывает батник во временную папку и выполняет его
Автор: Free_Soft
Дата сообщения: 06.04.2011 12:32

Цитата:
Ексешник просто распаковывает батник во временную папку и выполняет его

Bat_to_exe_converter делает также. а какой нужен результат?
Автор: king_stiven
Дата сообщения: 06.04.2011 12:54
понятно, я думал что на самом деле конвертирует а не просто запаковывает
Автор: Free_Soft
Дата сообщения: 06.04.2011 13:04
king_stiven
ммм... так это не косяк. сценарий cmd (язык bat) может обрабатывать только командный интерпритатор cmd.exe. соответственно, необходим батник чистой воды. Все компиляторы на этом и построены - запаковывают сценарий в exe. Некоторые еще и умеют дополнительные файлы упаковывать вместе с батником. А такого, чтобы полностью переписывал язык bat в exe не бывает.
Автор: wolf0425
Дата сообщения: 06.04.2011 13:07

Цитата:
я думал что на самом деле конвертирует
оптимизм какой-то нездоровый - cmd.exe достаточно сильно наворочен чтоб у разработчиков конвертера совершенно не появлялось желание писать эмулятор, совпадающий с смд по глюкофичам. конвертеры умерли вместе с ДОСом - когда command.com сам ничего не умел, функционал было несложно эмулировать, а время на распаковку и перебор строк батника хотелось сократить.
Автор: res2001
Дата сообщения: 06.04.2011 14:29
mp3exchanger
Как-то так:

Код: @echo off
SetLocal EnableDelayedExpansion
del /f/q 03.txt 2>nul
set "count=0"
for /f "tokens=* delims=" %%a in (01.txt) do (
if !count! lss 5 (
>>03.txt echo.%%a
set /a "count+=1"
) else (goto:next)
)
:next
>>03.txt more +5 02.txt
Автор: mp3exchanger
Дата сообщения: 06.04.2011 15:19
res2001, создаётся файл 03.txt, в котором содержимое 01.txt, а в командной строке пишет "Не удаётся найти C:\03.txt"
Автор: king_stiven
Дата сообщения: 06.04.2011 15:40
просто поменяй на правильное
01.txt 1.txt
и т д
Автор: res2001
Дата сообщения: 06.04.2011 15:41
mp3exchanger
Поправил код
Автор: mp3exchanger
Дата сообщения: 06.04.2011 15:47
king_stiven, это не поможет

Добавлено:
res2001, да сейчас заработало, спасибо. А можно ещё чтобы в конце пустой строки не создавалось? И почему-то по прежнему выдаётся сообщение "Не удаётся найти C:\03.txt".
Автор: res2001
Дата сообщения: 06.04.2011 16:04
mp3exchanger

Цитата:
Не удаётся найти C:\03.txt

Обнови еще раз код.

Цитата:
А можно ещё чтобы в конце пустой строки не создавалось?

Видимо в 2.txt в конце есть пустая строка, она и лепится в итоговый файл.
Автор: mp3exchanger
Дата сообщения: 06.04.2011 16:22
res2001, нет, в конце 2.txt пустых строк нет... но это не критично. А вот то, что при переносе удаляются начальные пробелы, вот это критично. Можно что-нибудь сделать, чтобы все строки были один в один?
Автор: res2001
Дата сообщения: 06.04.2011 16:39
mp3exchanger
обновляй очередной раз
Автор: mp3exchanger
Дата сообщения: 06.04.2011 16:54
res2001, всё супер! Спасибо большое.
Автор: 5peciali5t
Дата сообщения: 07.04.2011 22:32
нужен совет бывалых:
задача:
при консольной распаковке до административной точки дистрибутива skype
имею папку с файлами и папками
Application Data
Program Files
Skype.msi
и тут же папку {E633D396-5188-4E9D-8F6B-BFB8BF3467E8}
код в названии которой меняется от версии к версии приложения
эту папку надо удалить. можно ли зацепиться за символ { в ее имени
или удалить любую папку длина имени которой >= 16 символов?
как грамотно прописать с учетом универсальности на будущие версии?
rd /s /q {*

уж незнаю каким тыком вывел что работает но работает

for /f "delims= " %%i in ('dir /b "%cd%" ') do rd /s /q "%cd%\%%i"

все равно буду признателен если кто поправит (если это необходимо, например,
потому что в конкретной ситуации в каких-либо вариациях может неправильно
отработать)
Автор: 01MDM
Дата сообщения: 08.04.2011 06:16
5peciali5t

Код:
for /f %%i in (' dir /b /ad ^| findstr "{.*}" ') do rd /s /q "%%i"

Страницы: 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071

Предыдущая тема: зависает установка Windows XP: 39 минут


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