Указание дат для скрипта bash - PullRequest
1 голос
/ 30 января 2020

Я опишу, что я собираюсь сделать, прежде чем изложить вопрос. У меня есть месячные файлы за год до «сегодняшней даты», которые я хочу скопировать в другой каталог. Например, 1 февраля 2020 года я хочу скопировать файлы с 1 января по 31 января 2019 года в другой каталог. 1 марта 2020 года я хочу скопировать файлы с 1 февраля по 28 февраля 2019 года в другой каталог и так далее. Как мне указать даты в этом примере?

the image shows the date folders that I want to move to another dir

1 Ответ

0 голосов
/ 30 января 2020

Вы можете сделать это как

cp $(date --date="$(date +%Y-%m-01) -1 month" +%Y.%m).* /new/destination/folder

Вы просто вычитаете месяц из первого дня месяца, форматируете строку как «просто год и месяц» и добавляете подстановочный знак.

Не вычитайте месяц из текущей даты. См. Этот ответ для объяснения: { ссылка }

...