kolen
написал 16 января 2013 года в 16:39 (1784 просмотра)
Ведет себя
неопределенно; открыл 2 темы в форуме, оставил 4 комментария на сайте.
Очень нужна ваша помощь. Никогда не писал скриптов в bash, а тут срочно понадобилось. Никак не могу решить такую задачку.
Есть файлы с данными, их нужно открыть при этом меняя дату. Годы и месяцы я знаю как поменять, а вот с днями возникла проблема.
пример с именами файлов
grss.gdas.19150101-19150105.dat
grss.gdas.19150106-19150110.dat
grss.gdas.19150111-19150115.dat
grss.gdas.19150116-19150120.dat
grss.gdas.19150121-19150125.dat
grss.gdas.19150126-19150130.dat
Мой скрипт
for year in {1915..1956}
do
for month in 01 02 03 04 05 06 07 08 09 10 11 12
do
fname1=’grss.gdas.’$year»$month»??-’$year»$month»??.dat'
echo $fname1
done
done
Последние комментарии
-
fhunter, 25 апреля в 1:07 → Перекличка 11
-
Иванн, 9 апреля в 8:31 → Ассоциация РАСПО провела первое учредительное собрание 1
-
Oksana_Gusak, 13 октября в 7:31 → Как «замокать» файл для юниттеста в Python? 2
-
Kiri11.ADV1, 7 марта 2021 года в 12:01 → Логи catalina.out в TomCat 9 в формате JSON 1
-
fhunter, 26 февраля 2021 года в 20:45 → A, MX, PTR — Настройка и проверка извне. Как ? 2

Экология и вегетарианство на благо всем живым существам Планеты.
Если вам нужно перебрать все файлы и что-то с ними сделать, лучше сделать вот так:
Естественно шаблон для перебора в for можете указать точнее (grss.gdas.[0-9][0-9][0-9][0-9][0-1][0-9][0-3][0-9]-[0-9][0-9][0-9][0-9][0-1][0-9][0-3][0-9].dat ).
PS. Уточните задачу. Непонятно, что вы имели в виду под «меняя дату». Возможно это решается совсем по-другому.
Все файлы имеют одинаковое имя, в котором меняется только время.
Например, первый файл grss.gdas.19150101-19150105.dat
Последний файл grss.gdas.19560126-19150131.dat
Месяцы и годы понятно как менять, а вот дни….
я вам написал код, который переберёт все файлы и заполнит переменные значениями времени:
year1, month1, day1 — это год, месяц, день из первой части.
year2, month2, day2 — аналогично из второй.
Как из этого собрать имя файла — я тоже показал. Дальше уже ваши действия.
Спасибо, но у меня все равно работает не так как надо. Буду разбираться дальше.