Перейти из форума на сайт.

НовостиФайловые архивы
ПоискАктивные темыТоп лист
ПравилаКто в on-line?
Вход Забыли пароль? Первый раз на этом сайте? Регистрация
Компьютерный форум Ru.Board » Компьютеры » Программы » Командная строка, батники, сценарии (bat, cmd) 2

Модерирует : gyra, Maz

Widok (10-03-2009 12:39): Лимит страниц. Продолжаем здесь.  Версия для печати • ПодписатьсяДобавить в закладки
Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108

   

Widok



Moderator-Следопыт
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Командная строка, батники\сценарии (bat, cmd)
(часть 1)
Вопросы, задачи и их решения по работе с командной строкой, файлами, а также сопутствующие ссылки.

 
Важно: копируя батник через буфер обмена из форума не забывайте удалять пробелы в конце каждой строки, т.к. в некоторых случаях из-за этого программа будет работать неправильно!!!
 
Примечание: Большие куски кода заключайте в тэг [more]  
 
Смежные темы:
В помощь системному администратору » Автоматизация администрирования
Microsoft Windows » Задачи на bat-файлах 5
 
Полезные ссылки:
· Cmd. Описание от разработчиков
· Урок bat-аники (для начинающих)
· Курс лекций для начинающих. Полезно и просто описано
· Набор GNU утилит для win32
· Пакет утилит для организации интерфейса в bat-файлах
· Использование ansi.sys
· cmdow — изменение параметров и видимости дос-окна
· blat — отправка почты из консоли
· Справка по командам в виде Html
· Команды RunDll32
· Quick Batch File Compiler - Позволяет превратить ваш батник в независимое приложение
· Пример - получение и обработка списка пользователей
· Уильям Станек - Командная строка Microsoft Windows (вплоть до w2k3)
· Простой способ получать текущую дату всегда в одном формате (не зависит от языков и настроек)
 
Старая версия первого сообщения

Всего записей: 24190 | Зарегистр. 07-04-2002 | Отправлено: 12:08 19-11-2007 | Исправлено: Dmitriy05, 22:49 13-04-2008
Moon_aka_Sun



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
В описании команды time обычно говорится, что она выводит время в соответствии с региональным настройками. Но в реальности это почему-то не так. В настройках сказано, что формат времени - HH:mm:ss. И все программы выводят правильно, с ведущими нулями. А time выводит время с пробелом вместо ведущего нуля для часов. И именно этот формат используется в промпте в формате $T. Вопрос простой: как заставить time и $T использовать формат с ведущим нулём?
 
В реестре установки такие: HKCU\Control Panel\International\iTLZero=1, sTimeFormat=HH:mm:ss. Изменение этих же ключей для других пользователей (по умолчанию, системного и проч.) ситуации не меняет.

Всего записей: 60 | Зарегистр. 20-04-2005 | Отправлено: 03:02 03-06-2008 | Исправлено: Moon_aka_Sun, 03:03 03-06-2008
tolyn77



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
подскажите как из бат файла поменять место положения "мои документа" в системе?
как в свойствах "мои документы" на рабочем столе "переместить".
заранее благодарен

Всего записей: 1498 | Зарегистр. 07-09-2004 | Отправлено: 07:34 03-06-2008
gryu



дикий гусь
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
tolyn77
В тупую командой move  
При перезаписи "под собой" винда переназначает внутренние пути сама.
Верно для "рабочий стол", "мои докуметы", "фаворитес", и т.д.
Перемещать нужно находясь именно под пользователем-хозяином профиля.

Всего записей: 13019 | Зарегистр. 15-03-2006 | Отправлено: 12:05 03-06-2008
tolyn77



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
gryu
не понял а как это?
move а дальше что?у меня в C:\Documents and Settings\профиль\Рабочий стол\ нет "мои документы"?

Всего записей: 1498 | Зарегистр. 07-09-2004 | Отправлено: 17:03 03-06-2008
gryu



дикий гусь
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
tolyn77
 
"мои документы"
находятся не в
C:\Documents and Settings\профиль\Рабочий стол\
а в  
C:\Documents and Settings\профиль\
Оттуда и переносить нужно. На "рабочем столе" только ссылка.

Всего записей: 13019 | Зарегистр. 15-03-2006 | Отправлено: 17:38 03-06-2008
Cheerful_a_bear



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Приношу свои извинения, но не могу понять, что не правильно здесь...
 
 
Set FSO = CreateObject("Scripting.FileSystemObject")
sEXT ="TXT"
sDIR ="C:\BAT\"
sNEW ="C:\3\"
Set objDIR = GetFolder(sDIR)
GoSubFolders objDIR
 
Sub MainSub (objDIR )
 For Each efile in objDIR.Files
 fNAME = efile
 fEXT =FSO.GetExtensionName(efile.Path)
  If LCase (fEXT)= LCase(sEXT) Then sEXIST = sNEW & efile.Name
     If ((FSO.FileExists(sEXIST)) AND (efile <> sEXIST )) Then
      DelFile sEXIST
      End If
    On Error Resume Next
    MoveFile efile, sNEW
  End If
 Next
End Sub
 
 
 
Sub GoSubFolders(objDIR)
 If objDIR <> "\System Volume Information" Then
  MainSub objDIR
  For Each eFolder in objDIR.SubFolders
   GoSubFolders eFolder
  Next  
 End if
End Sub
 
 
Function GetFolder(sDIR)
On Error Resume Next
Set GetFolder =FSO.GetFolder(sDIR)
If Err.number <> 0 Then
 Wscript.Echo "Error connecting to folder: " & sFOLDER & VBlf & _
 "[" &Err.Nember & "] " &Err.Description
 Wscript.Quit Err.Number
End If
End Function
 
Sub DelFile(sFILE)
On Error Resume Next
FSO.DeleteFile sFILE.true
If Err.Number <>0 Then
Wscript.Echo "Error deleting file: " &sFILE
End If
End Sub
 
 
Sub MoveFile(sFile, sDIR)
 if Right(sDIR, 1) = "\" Then sDIR = sDIR & "\"
 On Error Resume Next
 FSO.CopyFile sFILE.sDIR.True
 If Err.Number <> 0 Then
  Wscript.Echo "Error moving file: " & sFILE
 End If
End Sub

Всего записей: 103 | Зарегистр. 30-04-2008 | Отправлено: 21:28 03-06-2008
tolyn77



Advanced Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
gryu
понял буду пробовать, спасибо

Всего записей: 1498 | Зарегистр. 07-09-2004 | Отправлено: 08:22 04-06-2008
Chebat

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Нужно сравнить в двух файлах .txt строки и не равные вывести в .txt файл
Буду очень благодарен за помощь

Всего записей: 3 | Зарегистр. 04-06-2008 | Отправлено: 18:40 04-06-2008
Elroir



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Chebat

Код:
 
findstr /v /g:1.txt 2.txt > dif.txt
findstr /v /g:2.txt 1.txt >> dif.txt
 


----------
"В интернете есть все, но не всегда"

Всего записей: 2631 | Зарегистр. 05-02-2003 | Отправлено: 20:57 04-06-2008
p1r0gg

Newbie
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
народ помогите плииз надо создать фаил который формировал бы ежимесячный отчет о изменении в рабочем каталоге (созданные файлы и удаленные)

Всего записей: 1 | Зарегистр. 05-06-2008 | Отправлено: 07:08 05-06-2008
KapralBel



Platinum Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
p1r0gg
А что сделать с теми файлам, которые создавались и удалялись между запусками батника?
Тоже включать?

Всего записей: 11354 | Зарегистр. 16-02-2005 | Отправлено: 10:35 05-06-2008
KillHunter



Newbie
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
Подскажите как переименовать файл backup.bkf в текущую дату???

Всего записей: 19 | Зарегистр. 21-07-2006 | Отправлено: 10:45 05-06-2008
Elroir



Silver Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
KillHunter

Код:
 
@echo off
setlocal
set "curr_date=%date: =_%"
set "curr_date=%curr_date:/=%"
set "curr_date=%curr_date:.=%"
set "curr_date=%curr_date:-=%"
ren backup.bkf "%curr_date%.bkf"
 


----------
"В интернете есть все, но не всегда"

Всего записей: 2631 | Зарегистр. 05-02-2003 | Отправлено: 10:57 05-06-2008
Moon_aka_Sun



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Как сделать, чтобы кодовая страница по умолчанию в cmd.exe на Виста была 866 вместо 437? Даже может не для cmd.exe, а для любой консольной программы. При этом желательно не менять ничего в региональных настройках. MUI или нет не знаю, системный язык английский.

Всего записей: 60 | Зарегистр. 20-04-2005 | Отправлено: 13:08 05-06-2008 | Исправлено: Moon_aka_Sun, 13:10 05-06-2008
gryu



дикий гусь
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Moon_aka_Sun
Команда chcp  
 
chcp [код]
 
Кодовая страница Страна/регион или язык  
437                       США  
850                       Многоязыковый (латиница I)  
852                       Восточная и центральная Европа (латиница II)  
855                       Кириллица (русский)  
857                       Турецкий  
860                       Португальский  
861                       Исландский  
863                       Французский (Канада)  
865                       Скандинавский  
866                       Русский  
869                       Современный греческий  
 
 
Пример  
 
chcp 855
 
Пишется в начале батника.
 
 
Добавлено:

Цитата:
Даже может не для cmd.exe, а для любой консольной программы.  

А вот тут незнаю.  
 
Добавлено:
Вот  это может поможет.
 
Я правда Висту незнаю. Есть там у неё config.nt или нет....

Всего записей: 13019 | Зарегистр. 15-03-2006 | Отправлено: 13:21 05-06-2008 | Исправлено: gryu, 13:45 05-06-2008
KapralBel



Platinum Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
gryu
config.nt - это для command.com на cmd.exe не действует

Всего записей: 11354 | Зарегистр. 16-02-2005 | Отправлено: 15:38 05-06-2008
gryu



дикий гусь
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
KapralBel
ему вроде нужно
Цитата:
а для любой консольной программы

А за это уже помоему command.com отвечает.  

Всего записей: 13019 | Зарегистр. 15-03-2006 | Отправлено: 15:53 05-06-2008
KapralBel



Platinum Member
Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору
gryu
command.com - отвечает за досовские программы
а cmd.exe - за консольные виндовые (правда их не очень много)
 
А вот как в cmd.exe это утворить - пока не знаю

Всего записей: 11354 | Зарегистр. 16-02-2005 | Отправлено: 16:25 05-06-2008
gryu



дикий гусь
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
KapralBel
чёрт. точно. сори.

Всего записей: 13019 | Зарегистр. 15-03-2006 | Отправлено: 16:40 05-06-2008
LeX333666



Junior Member
Редактировать | Профиль | Сообщение | Цитировать | Сообщить модератору
Извеняйте если не по теме....но уже замучился...дело вот в чем...русский язык в батнике пишется,читается, но если добавить rem и написать по русски то абра-кодабра...как зделать чтобы коретно отображал....попробавал много способов ничего непомагает... Очень надо !!! Спаиб заранее !!!

Всего записей: 122 | Зарегистр. 27-10-2007 | Отправлено: 18:41 05-06-2008
   

Страницы: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108

Компьютерный форум Ru.Board » Компьютеры » Программы » Командная строка, батники, сценарии (bat, cmd) 2
Widok (10-03-2009 12:39): Лимит страниц. Продолжаем здесь.


Реклама на форуме Ru.Board.

Powered by Ikonboard "v2.1.7b" © 2000 Ikonboard.com
Modified by Ru.B0ard
© Ru.B0ard 2000-2024

BitCoin: 1NGG1chHtUvrtEqjeerQCKDMUi6S6CG4iC

Рейтинг.ru