У меня есть немного дилемма на моих руках. Компания отправляет данные телефонного вызова CSV на мой сервер (через SSH-передачу), которые затем мне нужно переместить через задание cron в другой каталог.Перемещение файла с неизвестным именем
Пример каталога заключается в следующем:
erd_0010415_10120627_D.csv.Z
erd_0010416_20120616_W.csv.Z
erd_0010416_20120623_W.csv.Z
Как вы можете видеть имена файлов состоят из «ERD» с последующим числом, что другая компания генерировать (не имеет значения для нас, но может быть чем угодно), затем следует дата, а затем другая, казалось бы, случайная буква.
Файлы доставляются ежедневно, но только в случае телефонных звонков (так что в некоторые дни может отсутствовать файл за предыдущий день).
Мне нужно настроить задание cron, которое возьмет файл за вчерашний день (если он существует) и переместить его в другой каталог.
Что-то вдоль линий ...
mv erd_*_$(/bin/date +%Y%m%d)_*.csv.Z /home/other-user/calls/$(/bin/date +%Y%m%d).csv.Z
Очевидно, что звездочки фактически не работают в этом.
Вам действительно нужно переместить и переименовать? см. команду rename, это sed для имен файлов. –
'mv erd _ * _ $ (/ bin/date +% Y% m% d) _ *. Csv.Z/home/other-user/calls /' –