Назад | Перейти на главную страницу

SFTP загрузил файлы, а затем я хотел переименовать файлы сервера, как это сделать?

Мне нужно настроить банковский интерфейс, где мне нужно подключиться к удаленному банку, а затем загрузить файлы с банковского сервера в ящике на мой локальный сервер для дальнейшей обработки.

поэтому я выполняю следующие команды sftp в crontab

sftp -b /usr/local/CoXXX/inbox/get.sh user@host

в то время как у моего get.sh есть это

cd CoXX/inbox
get ^DELIST*
get ^BPAY*
bye

однако мое требование состоит в том, чтобы после загрузки файла мне нужно было переименовать этот файл на сервере в D- (ТАКОЕ ИМЯ ФАЙЛА), просто добавив D-, чтобы определить, что он уже был обработан.

как мне это сделать, если я сделаю

rename DELIST* D-DELIST*

Я думаю, он переименует все файлы (а не тот, который был загружен), как мне заархивировать это?

Если вы не хотите сначала получать список файлов (ls в пакете sftp), а затем обрабатывать их отдельными передачами, переименовывая их по одному по мере их поступления, я бы работал с inotify-tools. Каждый раз, когда завершается запись (файл загружается) в целевой каталог, запускайте сценарий для его переименования.