С Новым годом! Форум программистов, компьютерный форум, киберфорум
Batch (CMD/BAT)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/11: Рейтинг темы: голосов - 11, средняя оценка - 5.00
 Аватар для Badger
94 / 94 / 4
Регистрация: 25.06.2012
Сообщений: 278

Автоматическая запись имени каталога вчерашним числом

13.07.2012, 12:26. Показов 2313. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Привет всем.
Необходимо записать имя каталога вчерашним числом.
Записывается в формате гггг.мм.дд (каталоги используются как вложенные друг в друга - год\месяц\день)

Текущую дату вывожу так:
Windows Batch file
1
echo %date:~6%.%date:~3,-5%.%date:~0,-8%
А вот как занести в какую нибудь переменную результат вычисления текущей даты дня минус 1 день не знаю. Или может есть другие варианты решения?
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
13.07.2012, 12:26
Ответы с готовыми решениями:

Рекурсивный поиск и удаление каталога. Пробелы в имени каталога
Со вторым днем зимы всех. Есть bat: @echo off rem unsvn.bat setlocal rem rdir=название_удаляемых_каталогов set rdir=Startup ...

Создание каталога, копирование файлов, архивирование содержимого каталога, запись результата работы в файл
Написать командный файл, выполняющий следующие действия: создать каталог с названием dir<дата>, где <дата> - дата, которая...

Получение имени каталога
Добрый день. При работе с файлами, возникает потребность превратить C:\Windows\Temp в просто Temp. Есть ли какой-либо встроенный метод...

3
1781 / 763 / 130
Регистрация: 09.04.2011
Сообщений: 1,325
13.07.2012, 13:15
Badger, пробуйте:
Windows Batch file
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
@echo off
setlocal enabledelayedexpansion
 
set d=%date:~0,2%
set m=%date:~3,2%
set y=%date:~6,4%
 
if %d:~0,1%==0 set d=%d:~1%
if %m:~0,1%==0 set m=%m:~1%
 
set /a feb=y%%4
if %feb%==0 (set feb=29) else (set feb=28)
 
set /a tok=m-1
if %tok%==0 set tok=12
for /f "tokens=%tok%" %%i in ("31 %feb% 31 30 31 30 31 31 30 31 30 31") do (
rem минус 1 день  set /a d-=1
   set /a d-=1
    if !d!==0 (
        set d=%%i
        set m=%tok%
        if !m!==12 set /a y-=1
    )
)
 
set d=0%d%
set m=0%m%
set yesterday=%y%.%m:~-2%.%d:~-2%
md %yesterday%
exit /b
2
 Аватар для Badger
94 / 94 / 4
Регистрация: 25.06.2012
Сообщений: 278
13.07.2012, 14:21  [ТС]
Спасибо sov44!
Появилось пару вопросов:
-как работает y%%4 в 11 строке?
-как работает цикл в 16 строке?
-прочитав справку не совсем понял использование восклицательных знаков !переменная! Если не трудно объясните пожалуйста.
0
1781 / 763 / 130
Регистрация: 09.04.2011
Сообщений: 1,325
13.07.2012, 14:49
Лучший ответ Сообщение было отмечено как решение

Решение

Badger, не я автор скрипта, я всего лишь его немного дополнил.
Цитата Сообщение от Badger Посмотреть сообщение
-как работает y%%4 в 11 строке?
проверяет, делится ли цифра года на цифру 4 без остатка. Если делится, то %feb%=0 иначе %feb%=1
Цитата Сообщение от Badger Посмотреть сообщение
-как работает цикл в 16 строке?
перебор дней в месяцах
Цитата Сообщение от Badger Посмотреть сообщение
не совсем понял использование восклицательных знаков !переменная!
если переменная присваивается внутри for, то она заключается в !
3
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
13.07.2012, 14:49
Помогаю со студенческими работами здесь

Vk api автоматическая публикация записей в группе от имени группы
Добрый день. Подскажите кто сталкивался как публиковать записи в группе от имени группы. искал в правах для групп нет прав для wall. Нашел...

Открытие каталога по имени, введенному пользовтелем
Ребята помогите написать скрипт для сайта! В общем есть сайт и есть определенные каталоги(папки). Нужно чтобы посетители открывали эти...

Использование ячейки, как имени каталога
Здравствуйте. Возникла такая задача, есть ячейка с сложным заполнением результат выглядит так. t1 - 211.2 м2 - Двухэтажный -...

Создание локальной группы из имени каталога
Доброго времени суток. Задача у меня такова - брать имя каталога, допустим C:\папка, создавать на основе имени локальную политику...

Вывод данных вчерашним днем
всем привет ) ситуация : есть бд ( BD_A ) в ней табл . ( pdd ), которая имеет много полей , среди которых data_reg и data_plat ) вопросы:...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
Модель микоризы: классовый агентный подход 3
anaschu 06.01.2026
aa0a7f55b50dd51c5ec569d2d10c54f6/ O1rJuneU_ls https:/ / vkvideo. ru/ video-115721503_456239114
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR
ФедосеевПавел 06.01.2026
Owen Logic: О недопустимости использования связки «аналоговый ПИД» + RegKZR ВВЕДЕНИЕ Введу сокращения: аналоговый ПИД — ПИД регулятор с управляющим выходом в виде числа в диапазоне от 0% до. . .
Модель микоризы: классовый агентный подход 2
anaschu 06.01.2026
репозиторий https:/ / github. com/ shumilovas/ fungi ветка по-частям. коммит Create переделка под биомассу. txt вход sc, но sm считается внутри мицелия. кстати, обьем тоже должен там считаться. . . .
Расчёт токов в цепи постоянного тока
igorrr37 05.01.2026
/ * Дана цепь постоянного тока с сопротивлениями и напряжениями. Надо найти токи в ветвях. Программа составляет систему уравнений по 1 и 2 законам Кирхгофа и решает её. Последовательность действий:. . .
Новый CodeBlocs. Версия 25.03
palva 04.01.2026
Оказывается, недавно вышла новая версия CodeBlocks за номером 25. 03. Когда-то давно я возился с только что вышедшей тогда версией 20. 03. С тех пор я давно снёс всё с компьютера и забыл. Теперь. . .
Модель микоризы: классовый агентный подход
anaschu 02.01.2026
Раньше это было два гриба и бактерия. Теперь три гриба, растение. И на уровне агентов добавится между грибами или бактериями взаимодействий. До того я пробовал подход через многомерные массивы,. . .
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru