У меня есть требование создать скрипт для проверки имени файла. В источнике будет два файла, из которых начнется сбор данных Informatica. Один будет «Выполнять файл (текущий день: Sysdate)», а другой будет завершен/закрыт файл (предыдущий день: то есть с именем файла, выровненным с Sysdate -1). Теперь ETL должен забрать все файлы, кроме как в процессе. Файл (дата файла меньше, чем Sysdate). Предполагая, что текущий день «22/06/2015» - следующий список файлов, которые ETL можно ожидать, что в исходной папкеShell Script для проверки имени файла
filename_22/06/2015_ready.csv - этот файл должен быть проигнорирован filename_21/06/2015_ready.csv - этот файл должен быть обработан ETL
Пожалуйста, помогите мне, как я могу написать сценарий оболочки для выполнения этого требования.
Привет, Спасибо. Я попытался найти. -type f -mmin +1 -exec ls {} + ', который дает мне все файлы, содержащие текущий файл. В выражении «найти. -type f -mtime +1 -exec ls -halt {} + 'Я получаю ошибку в отсутствии такого файла или каталога. –
mmh, ok: from 'man find': * Когда вы обнаруживаете, сколько 24-часовых периодов назад последний доступ к файлу, любая дробная часть игнорируется, поэтому для сопоставления -time +1 необходимо получить доступ к файлу по крайней мере два дня назад. *. Это означает, что вы должны использовать '-mmin + $ ((60 * 24))' для файлов последних дней. – Danduk82