Предыдущая тема :: Следующая тема |
Автор |
Сообщение |
Sys_Admi Гость
|
Добавлено: Вт Янв 25 2005 10:49 Заголовок сообщения: Помогите создать bat файл |
|
|
Как в bat файле описать команду, чтобы при запуске она создавала файл с имеем дня недели (файл будет запускаться раз в день по будням для создания резервной копии базы данных) |
|
Вернуться к началу |
|
|
Andy_user
Зарегистрирован: 03.12.2003 Сообщения: 382 Откуда: Санкт-Петербург
|
Добавлено: Вт Янв 25 2005 12:01 Заголовок сообщения: |
|
|
Например:
>echo %date%
Вт 25.01.2005
>echo %date:~3,5%
25.01
>echo %date:~3,10%
25.01.2005
>echo 1 >> c:\%date:~3,2%.txt
---
В результате выполнения последней команды появится файл с:\25.txt _________________ Знание принципов компенсирует незнание фактов. |
|
Вернуться к началу |
|
|
4u3u
Зарегистрирован: 24.01.2003 Сообщения: 997 Откуда: Moscow
|
Добавлено: Вт Янв 25 2005 14:19 Заголовок сообщения: |
|
|
Для дня недели соответственно echo %date:~0,-10% |
|
Вернуться к началу |
|
|
Andy_user
Зарегистрирован: 03.12.2003 Сообщения: 382 Откуда: Санкт-Петербург
|
Добавлено: Вт Янв 25 2005 14:22 Заголовок сообщения: |
|
|
Если формат даты такой, что:
>echo %date%
Вт 25.01.2005
То:
>echo %date:~0,2%
Вт _________________ Знание принципов компенсирует незнание фактов. |
|
Вернуться к началу |
|
|
4u3u
Зарегистрирован: 24.01.2003 Сообщения: 997 Откуда: Moscow
|
Добавлено: Вт Янв 25 2005 16:29 Заголовок сообщения: |
|
|
Ну да, просто в английском варианте, скажем, день недели из трех букв. Справа считать символы просто надежнее. |
|
Вернуться к началу |
|
|
a-m-d
Зарегистрирован: 09.09.2004 Сообщения: 1498 Откуда: SPb
|
Добавлено: Вт Янв 25 2005 17:23 Заголовок сообщения: |
|
|
Еще бы автор версию ОС сообщил, было бы вообще здОрово!
То, что правильно сказано Andy_user и 4u3u действительно для ОС не младше Win2k. Т.е. Win 2k, XP, 2k3. В NT4, например, это работать не будет _________________ Век живи - век учись!.. Дураком помрёшь. |
|
Вернуться к началу |
|
|
Дубровский Гость
|
Добавлено: Вт Янв 25 2005 18:34 Заголовок сообщения: |
|
|
А у меня и в ХР SP2, и в в2к3серв день недели не выводится. Только число.месяц.год |
|
Вернуться к началу |
|
|
Andy_user
Зарегистрирован: 03.12.2003 Сообщения: 382 Откуда: Санкт-Петербург
|
Добавлено: Ср Янв 26 2005 09:03 Заголовок сообщения: |
|
|
Встроенная справка Windows.
Ключевое слово для поиска "формат даты". _________________ Знание принципов компенсирует незнание фактов. |
|
Вернуться к началу |
|
|
Andy_user
Зарегистрирован: 03.12.2003 Сообщения: 382 Откуда: Санкт-Петербург
|
Добавлено: Ср Янв 26 2005 09:49 Заголовок сообщения: |
|
|
Обратите внимание на то, что число месяца в формате даты может задаваться:
d
dd
ddd
dddd _________________ Знание принципов компенсирует незнание фактов. |
|
Вернуться к началу |
|
|
Sys_Admin
Зарегистрирован: 24.01.2005 Сообщения: 11
|
Добавлено: Ср Янв 26 2005 13:15 Заголовок сообщения: Текст файла |
|
|
if %date:~0,2%==Пн set qqq=1
if %date:~0,2%==Вт set qqq=2
if %date:~0,2%==Ср set qqq=3
if %date:~0,2%==Чт set qqq=4
if %date:~0,2%==Пт set qqq=5
if %date:~0,2%==Сб set qqq=6
if %date:~0,2%==Вс set qqq=7
"C:\Program Files\Microsoft Office\Office\Msaccess.exe" C:\pr\sotr.mdb /Compact C:\pr\qqq.mdb
не удается подставить значение в имя файла |
|
Вернуться к началу |
|
|
Гость
|
Добавлено: Ср Янв 26 2005 13:18 Заголовок сообщения: Re: Текст файла |
|
|
Sys_Admin писал(а): |
"C:\Program Files\Microsoft Office\Office\Msaccess.exe" C:\pr\sotr.mdb /Compact C:\pr\qqq.mdb
не удается подставить значение в имя файла |
"C:\Program Files\Microsoft Office\Office\Msaccess.exe" C:\pr\sotr.mdb /Compact C:\pr\%qqq%.mdb |
|
Вернуться к началу |
|
|
Sys_Admin
Зарегистрирован: 24.01.2005 Сообщения: 11
|
Добавлено: Ср Янв 26 2005 13:28 Заголовок сообщения: Нет, не то |
|
|
"C:\Program Files\Microsoft Office\Office\Msaccess.exe" C:\pr\sotr.mdb /Compact C:\pr\s(%qqq%).mdb
эта команда вообще создает файл без имени.. |
|
Вернуться к началу |
|
|
Andy_user
Зарегистрирован: 03.12.2003 Сообщения: 382 Откуда: Санкт-Петербург
|
Добавлено: Ср Янв 26 2005 13:32 Заголовок сообщения: |
|
|
Для проверки отабатывает ли хоть один if ... set ...
после if-ов поставьте
echo %qqq%
Чему равно qqq ? _________________ Знание принципов компенсирует незнание фактов. |
|
Вернуться к началу |
|
|
Sys_Admin
Зарегистрирован: 24.01.2005 Сообщения: 11
|
Добавлено: Ср Янв 26 2005 14:16 Заголовок сообщения: ?? |
|
|
Посмотрите текст
echo on
if %date:~0,2%==Ср set qqq=1
echo %qqq%
if %date:~0,2%==Чт set qqq=2
echo %qqq%
if %date:~0,2%==Ср set qqq=3
echo %qqq%
if %date:~0,2%==Чт set qqq=4
echo %qqq%
if %date:~0,2%==Пт set qqq=5
echo %qqq%
if %date:~0,2%==Сб set qqq=6
echo %qqq%
if %date:~0,2%==Вс set qqq=7
echo %qqq%
pause
"C:\Program Files\Microsoft Office\Office\Msaccess.exe" C:\pr\sotr.mdb /Compact C:\pr\%qqq%.mdb
ничего не дало файл не создается вообще |
|
Вернуться к началу |
|
|
Sys_Admin
Зарегистрирован: 24.01.2005 Сообщения: 11
|
Добавлено: Ср Янв 26 2005 14:25 Заголовок сообщения: ?? |
|
|
Вот что выдает :
C:\Documents and Settings\ATBasu\Рабочий стол\Новая папка>echo
Режим вывода команд на экран (ECHO) включен.
C:\Documents and Settings\ATBasu\Рабочий стол\Новая папка>if Ср == ┬ё set qqq=7 |
|
Вернуться к началу |
|
|
Andy_user
Зарегистрирован: 03.12.2003 Сообщения: 382 Откуда: Санкт-Петербург
|
Добавлено: Ср Янв 26 2005 14:39 Заголовок сообщения: |
|
|
Это одна из причин, почему мне не хочется пользоваться русифицированным Windows.
Программа "Блокнот" рисует русские символы в одной кодировке, а выдача в окне командной строки происходит в другой...
Попробуйте Ваш батник набрать в каком-нибудь другом редакторе, например Windows Commander.
Есть и другие способы, но боюсь, трудно будет Вам это объяснить. Извините... _________________ Знание принципов компенсирует незнание фактов. |
|
Вернуться к началу |
|
|
oleg_poruchikov
Зарегистрирован: 09.09.2004 Сообщения: 567 Откуда: http://tor.clan.su
|
Добавлено: Ср Янв 26 2005 15:03 Заголовок сообщения: Re: ?? |
|
|
Sys_Admin писал(а): | Ср == ┬ё | Необходимо перекодировать скрипт из Win- в DOS-кодировку.... (или наоборот, в зависимости от того, в какой кодировке он у Вас)..... _________________ Вот такая картина маслом! (c) |
|
Вернуться к началу |
|
|
oleg_poruchikov
Зарегистрирован: 09.09.2004 Сообщения: 567 Откуда: http://tor.clan.su
|
Добавлено: Ср Янв 26 2005 15:15 Заголовок сообщения: |
|
|
Это можно сделать несколькими способами, приведу пару из них:
1. В FAR'e открываете файл для редактирования(F4), выделяете весь текст, вырезаете в буфер обмена(Ctrl+X), перекодируете (F, вставляете текст из буфера(Ctrl+V), сохраняете изменение(F2).
2. У файла меняете расширение на '.txt'
Запускаете WordPad, Файл => Открыть => Тип файла "Текстовый документ"
После открытия
Файл => Сохранить как... => Тип файла "Текстовый документ MS-DOS"
У полученного файла меняете расширение на '.bat' или '.cmd' _________________ Вот такая картина маслом! (c) |
|
Вернуться к началу |
|
|
oleg_poruchikov
Зарегистрирован: 09.09.2004 Сообщения: 567 Откуда: http://tor.clan.su
|
Добавлено: Чт Янв 27 2005 13:12 Заголовок сообщения: Re: Текст файла |
|
|
теперь в теле скрипта делаешь как Sys_Admin писал(а): | if %date:~0,2%==Пн set qqq=1
if %date:~0,2%==Вт set qqq=2
if %date:~0,2%==Ср set qqq=3
if %date:~0,2%==Чт set qqq=4
if %date:~0,2%==Пт set qqq=5
if %date:~0,2%==Сб set qqq=6
if %date:~0,2%==Вс set qqq=7 | [/quote] _________________ Вот такая картина маслом! (c) |
|
Вернуться к началу |
|
|
|