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

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

Автор: Nagual
Дата сообщения: 17.09.2007 01:13
Elroir, оно, спс
Автор: dardreams
Дата сообщения: 17.09.2007 07:08
можно узнать размер папки ?
Автор: vu1tur
Дата сообщения: 17.09.2007 09:32
dardreams
du -s path\to\folder

du брать из UnxUtils — набора GNU утилит для Win32.
Автор: Maza Faka
Дата сообщения: 17.09.2007 09:47
dardreams
Штатными средствами так:

Код:
@Echo Off
ChCp 1251> Nul
For /F "Tokens=3*" %%a In (
'Dir /-C C:\Temp ^| Find "файлов"') Do Echo The C:\Temp folder size = %%a
Автор: dardreams
Дата сообщения: 17.09.2007 09:55
vu1tur
А где справку об этих командах можно прочитать ?
Автор: 01MDM
Дата сообщения: 17.09.2007 09:58
dardreams
du -h; du --help или просто du
Автор: dardreams
Дата сообщения: 17.09.2007 10:07
Maza Faka
хитрый способо ! спасибо, еще бы в точности до мегабайта
например 456 мб 435 кб 1001 байт
было бы вообще супер !
Автор: dSasha
Дата сообщения: 17.09.2007 12:29
Ребята, простите меня, дурака, вчера потратил много времени и дорогого трафика на поиски ответа на простой вопрос и не нашёл. Когда я делаю > file.txt, Блокнот показывает:
Цитата:
‘ҐаўҐа бжҐ- аЁҐў Windows (Microsoft R) ўҐабЁп 5.6
c Љ®аЇ®а жЁп Њ ©Єа®б®дв (Microsoft Corp.), 1996-2001. ‚ᥠЇа ў  § йЁйҐ-л.


------------------------------------------------------------------------------
ЏҐаҐзЁб«Ґ-ЁҐ б®ЎлвЁ© ў ¦га- «Ґ 'system' ¤«п 㧫  'WinXPSP2'
------------------------------------------------------------------------------
’ЁЇ: Ё-д®а¬ жЁп
‘®ЎлвЁҐ: 20159
„ в  Ё ўаҐ¬п : 17.09.2007 0:23:03
€бв®з-ЁЄ: RemoteAccess
ComputerName: WinXPSP2
Љ вҐЈ®аЁп: ЌҐв
Џ®«м§®ў вҐ«м: Ќ/„
ЋЇЁб -ЁҐ: Џ®¤Є«озҐ-ЁҐ Ї®«м§®ў вҐ«п "demo" Є "demo", ўлЇ®«-Ґ--®Ґ б Ї®¬®ймо гбва®©бвў  "COM1", Ўл«® ЇаҐаў -®.
Можно ли как-то сделать, чтобы Блокнот сразу показывал правильно русские буквы без перекодировки вручную другой программой?
Цитата:
Сервер сценариев Windows (Microsoft R) версия 5.6
c Корпорация Майкрософт (Microsoft Corp.), 1996-2001. Все права защищены.
------------------------------------------------------------------------------
Перечисление событий в журнале 'system' для узла 'WinXPSP2'

Тип: информация
Событие: 20159
Дата и время : 17.09.2007 0:23:03
Источник: RemoteAccess
ComputerName: WinXPSP2
Категория: Нет
Пользователь: Н/Д
Описание: Подключение пользователя "demo" к "demo", выполненное с помощью устройства "COM1", было прервано.
Подскажите, пожалуйста, как или подскажите, где есть подсказка.
Автор: 01MDM
Дата сообщения: 17.09.2007 12:44
dSasha
сначала сделай chcp 1251
Автор: vserd
Дата сообщения: 17.09.2007 12:57

Цитата:
Можно ли как-то сделать, чтобы Блокнот сразу показывал правильно русские буквы без перекодировки вручную другой программой?

Нет. Блокнот не поддерживает DOS кодировку. Переходи на альтернативную программу, или пользуйся write
Автор: Drol
Дата сообщения: 17.09.2007 13:19
а кто знает команду, которое автоматически закрывает ту или иную программу?
например подтип такого

close.bat
---
CloseRun mspaint.exe

или

tskill mspaint.exe
---

Мне нужно для того, чтобы при выполнения пользователем Log off. сработал скрипт bat, которая автоматически закрывала программу указзаное мною.
Автор: Elroir
Дата сообщения: 17.09.2007 13:43
Drol

Цитата:
tskill mspaint.exe

Вот она и закрывает.
Автор: djdtyfhu
Дата сообщения: 17.09.2007 13:56
Здравствуйте, возникла задача переместить множество файлов на один уровень вверх, т.е

исходно файл находится, например в:
E:\update\17rt\images\crw333.jpg

надо его переместить в
E:\update\17rt\crw333.jpg

Таких каталогов около 500 и файлов в них десятки тысяч. Если кто поможет буду благодарен.
Автор: Elroir
Дата сообщения: 17.09.2007 14:15
djdtyfhu
Какая структура у каталогов? (откуда начинать? идти вглубь или по определенному уровню? и т.д.)
Автор: djdtyfhu
Дата сообщения: 17.09.2007 14:22
Elroir

Стуктура такая:
E:\update\17rt\image

меняются только названия среднего каталога "17rt", "17uu", "65gg". В этом каталоге всегда 4 символа первые два произвольные цифры, последние два произвольные буквы.

Идеально было бы начать с "Е:\Update", а далее скрипт сам бы прошелся по всем файлам и перенес их на один уровень вверх, но вполне достаточно будет и следующего:
я сам перехожу в каталог "E:\update\17rt", запускаю скрипт, который просканирует вложенный каталог "E:\update\17rt\image" и перенесет все файлы на один уровень вверх.

P.S. Было бы неплохо если бы это удалось интегрировать в виде кнопки в Total Commander, т.к. там есть возможность передавать в вызываемую программу пути.
Автор: Drol
Дата сообщения: 17.09.2007 14:25

Цитата:
Вот она и закрывает.


У меня не работает и сообщает - 'tskill' is not recognized as an internal or external command, operable program or batch file.

или сообщает - Для этой программы требуется, чтобы работали службы терминалов.
Автор: djdtyfhu
Дата сообщения: 17.09.2007 14:26
да и еще каталог IMAGE конечный, далее нет каталогов.
Автор: wolf0425
Дата сообщения: 17.09.2007 14:31
djdtyfhu зачем Elroir структура я не понял - я так думаю что файлы только в каталогах максимальной вложенности, но вот что делать в случае дублирования имен?
E:\update\17rt\images1\crw333.jpg
E:\update\17rt\images2\crw333.jpg

если дублирования заведомо нет - всё просто:

Код: @echo off
for /f "delims=" %%a in ('dir /b /s /a-d *.jpg') do move "%%~fa" "%%~dpa..\%%~nxa"
Автор: dSasha
Дата сообщения: 17.09.2007 14:35

Цитата:
C:\>chcp 1251
Текущая кодовая страница: 1251
Ничего не меняется. Как и от cmd/u.
По команде write открывается Wordpad. Если имелся в виду формат *.wri , то от расширения ничего не зависит. Или что за write?
Автор: djdtyfhu
Дата сообщения: 17.09.2007 14:35
wolf0425

Дублирования нет, как нет каталогов вида
E:\update\17rt\images1\
E:\update\17rt\images2\
с именем 17rt всегда только один каталог.

Добавлено:
wolf0425
Скрипт прекрасно отработал, еще бы добавить, чтобы удалялась папка images. Спасибо.
Автор: wolf0425
Дата сообщения: 17.09.2007 14:49
djdtyfhu а папка что - всегда называется images?
стоило ж цикл мутить, если ты согласен сам обходить папки...

move images\*.jpg . && rd images
(выполнять в 17rt)
Автор: djdtyfhu
Дата сообщения: 17.09.2007 14:51
wolf0425

Ну так это только для одной директории, а прежний ваш скрипт сразу все директории скопом обработал.
Автор: Elroir
Дата сообщения: 17.09.2007 15:13
wolf0425
Вот для того, чтобы сразу прояснить ситуацию, я и спрашивал о структуре.

djdtyfhu
Вот мой вариант:

Код:
for /d %%a in (*.*) do (
pushd "%%a"
move image\*.* .\
rd image
popd
)
Автор: djdtyfhu
Дата сообщения: 17.09.2007 15:22
Elroir

Можно сделать версию и для TotalCommander-а. Какую из директорий ты собираешься передавать в качестве параметра (E:\update или одну из вложенных)?

Да хочу передавать директорию "E:\update"

Добавлено:
Всем ответившим большое СПАСИБО. Все варианты работают. Сегодня больше не отвечу, пора уезжать.
Автор: Elroir
Дата сообщения: 17.09.2007 15:42
djdtyfhu
Для TotalCommander-а добавляем две строчки - одну в начало и одну в конец.
В начало:

Код: pushd "%~1"
Автор: dSasha
Дата сообщения: 18.09.2007 04:16
И всё-таки, кто-нибудь может объяснить, почему через буфер обмена из окна командной строки русский текст нормально копируется в Блокнот, а то же самое через >file.txt в виде крякозябров? Тут в ANSI или UNICODE, а туда в ASCII? Почему? Мне, , это очень странно.
Автор: Elroir
Дата сообщения: 18.09.2007 04:40
dSasha
С этими кодировками сам черт ногу сломит. Вот как я это понимаю - когда текст в 866-ой кодировке выводится на экран (в консольном окне), ты видишь правильные русские буквы. При этом, когда ты копируешь содержимое консольного окна - оно копируется уже в 1251-ой (Windows) кодировке и, соответственно, никаких проблем с этим текстом нет. А вот когда текст сразу выводится в файл - он так и остается в 866-ой (DOS) кодировке и, при чтении файла в Windows, ты видишь "крякозябры"

Добавлено:
Это все IMHO. Я когда-то пытался разобраться с тем, как работают русские кодировки в Windows, но так и не нашел исчерпывающего ответа на свои вопросы.
Автор: dardreams
Дата сообщения: 18.09.2007 06:54
Есть калькулятор под смд чтобы и целые и десятичные показывал ?
Автор: Lutvun
Дата сообщения: 18.09.2007 09:13
Нужно чтоб батником все файлы из заданой папки перемещялись в другую, за исключением *.DMF и *.DMFr.
Как лудше сделть?

Добавлено:
И ищё, как можна запустить прогу на удалённом компе?
Автор: dardreams
Дата сообщения: 18.09.2007 09:50

Цитата:
И ищё, как можна запустить прогу на удалённом компе?

psexec

Страницы: 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869

Предыдущая тема: Доступ к реестру через RegEdit?


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