BASH SFTP скрипт

На самом деле это единственный раздел про unix на этом форуме

Модераторы: /dev/random, Модераторы разделов

shuha
Сообщения: 21

BASH SFTP скрипт

Сообщение shuha »

Здравствуйте. Есть 2 комьпютера, нужно с 1го компьютера периодически забирать файлы с папки
/OUTDIR и перемещать их на 2ой компьютер при помощи sftp в папку /INDIR
(можно копировать файл, а затем удалять его - чтобы не копировать его снова).
Помогите пожалуйста написать скрипт
Спасибо сказали:
Аватара пользователя
butch
Сообщения: 331
ОС: :OC

Re: BASH SFTP скрипт

Сообщение butch »

man sshfs (fusessh)
man cp
man rm
man cron
man crontab
должно хватить
Спасибо сказали:
allez
Сообщения: 2223
Статус: Не очень злой админ :-)
ОС: SuSE, CentOS, FreeBSD, Windows

Re: BASH SFTP скрипт

Сообщение allez »

Еще почитайте man sftp на предмет опции -b. Так сказать, для полноты ощущений. :)
Спасибо сказали:
shuha
Сообщения: 21

Re: BASH SFTP скрипт

Сообщение shuha »

butch писал(а):
29.06.2009 16:00
man sshfs (fusessh)
man cp
man rm
man cron
man crontab
должно хватить


Код: Выделить всё

#!/bin/bash
OUTDIR="/outdir"
TARGET_HOST=localhost
TARGET_USER=root
TARGET_DIR="/indir"
DATE_LOG=`date +%R-%d-%m-%Y`
FTPLOG="/log/$DATE_LOG.log"
SLEEP_INTERVAL=60
while [ 1 ]; do
sftp -b /dev/fd/0 $TARGET_USER@$TARGET_HOST>>$FTPLOG 2>&1<<EOT
lcd $OUTDIR
mput *.zip
chmod 666 *.zip
exit
EOT
sleep $SLEEP_INTERVAL
done


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

allez писал(а):
29.06.2009 16:03
Еще почитайте man sftp на предмет опции -b. Так сказать, для полноты ощущений. :)


Читал и курил... да вот толку... Можно было бы реализовать копирование каждого файла в цикле... Ну и его удаление естественно, после копирования... Да вот только для каждого файла открывать отдельную сессию sftp. Хотелось бы открыть одну сессию для всех файлов в папке /OUTDIR, скопировать их в /INDIR на удаленном хосте, и удалить с локального хоста.
Спасибо сказали:
allez
Сообщения: 2223
Статус: Не очень злой админ :-)
ОС: SuSE, CentOS, FreeBSD, Windows

Re: BASH SFTP скрипт

Сообщение allez »

Тогда можете попробовать scp.
Спасибо сказали:
shuha
Сообщения: 21

Re: BASH SFTP скрипт

Сообщение shuha »

allez писал(а):
29.06.2009 16:56
Тогда можете попробовать scp.


Нужно использовать sftp
Спасибо сказали:
shuha
Сообщения: 21

Re: BASH SFTP скрипт

Сообщение shuha »

Здравствуйте. Появился такой вопрос. Предположим, что в данный момент нет соединения ssh, или связь разорвана.
Существуют ли коды выхода, или коды ошибок, неудачного завершения работы sftp?
Спасибо сказали: