URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID1
Нить номер: 67464
[ Назад ]

Исходное сообщение
"Как вырезать несколько файлов из сервера"

Отправлено Akmal , 10-Июл-06 11:47 
Есть фтп-сервер. С помощью скрипта копирую один опреленный файл.
Но мне надо чтобы он копировал весь каталог, потом удалил их из сервера. Это для того, чтобы в дальнейшем, когда на сервер выгружается очередные данные не искать которые из них новые файлы.

Формат файла billyyyymmdd_hhmm00 (bill20060710_123000), ОС Slackware 10.0


Содержание

Сообщения в этом обсуждении
"Как вырезать несколько файлов из сервера"
Отправлено Akmal , 10-Июл-06 12:08 
>Есть фтп-сервер. С помощью скрипта копирую один опреленный файл.
>Но мне надо чтобы он копировал весь каталог, потом удалил их из
>сервера. Это для того, чтобы в дальнейшем, когда на сервер выгружается
>очередные данные не искать которые из них новые файлы.
>
>Формат файла billyyyymmdd_hhmm00 (bill20060710_123000), ОС Slackware 10.0


Оказывается с помощью команды:
mget *
как сделать, чтобы он копировал без подтверждения???????????


"Как вырезать несколько файлов из сервера"
Отправлено EL , 10-Июл-06 12:37 
>>Есть фтп-сервер. С помощью скрипта копирую один опреленный файл.
>>Но мне надо чтобы он копировал весь каталог, потом удалил их из
>>сервера. Это для того, чтобы в дальнейшем, когда на сервер выгружается
>>очередные данные не искать которые из них новые файлы.
>>
>>Формат файла billyyyymmdd_hhmm00 (bill20060710_123000), ОС Slackware 10.0
>
>
>Оказывается с помощью команды:
>mget *
>как сделать, чтобы он копировал без подтверждения???????????

А wget не спасет "оцца русской демократии"?


"Как вырезать несколько файлов из сервера"
Отправлено Akmal , 10-Июл-06 14:26 
>>>Есть фтп-сервер. С помощью скрипта копирую один опреленный файл.
>>>Но мне надо чтобы он копировал весь каталог, потом удалил их из
>>>сервера. Это для того, чтобы в дальнейшем, когда на сервер выгружается
>>>очередные данные не искать которые из них новые файлы.
>>>
>>>Формат файла billyyyymmdd_hhmm00 (bill20060710_123000), ОС Slackware 10.0
>>
>>
>>Оказывается с помощью команды:
>>mget *
>>как сделать, чтобы он копировал без подтверждения???????????
>
>А wget не спасет "оцца русской демократии"?


Спасибо за совет. Помог. Но все равно теперь их надо удалить. Для этого все равно требуется зайти по фтп.


"Как вырезать несколько файлов из сервера"
Отправлено Akmal , 11-Июл-06 15:54 

>>А wget не спасет "оцца русской демократии"?
wget не спас.
Дело в том, что в фтп-сервере имеются лог-файлы разговоров. И по скрипту все нужно копировать на базу в локальном компе. Для того чтобы данные не дублировались, я решил копировать весь каталог и удалить эти файлы. Когда задача запускается в следущий раз, то снова копирует весь каталог. Поэтому кажется все-равно надо использовать групповое копирование и удаление файлов. При использовании mget спрашивает подтверждение, когда нажимаю y/n разницы нет выдает ошибку.

Пожалуйста, помогите, со скриптом.



"Как вырезать несколько файлов из сервера"
Отправлено _KAV_ , 11-Июл-06 16:35 
используй опцию mirror во wget - скачаются только новые или измененные файлы

"Как вырезать несколько файлов из сервера"
Отправлено Akmal , 11-Июл-06 17:27 
>используй опцию mirror во wget - скачаются только новые или измененные файлы
>


Измененный файл качается в директорию. А как сделать чтобы этот файл добавился в определенный другой файл?


"Как вырезать несколько файлов из сервера"
Отправлено _KAV_ , 11-Июл-06 17:46 
>Измененный файл качается в директорию. А как сделать чтобы этот файл добавился
>в определенный другой файл?
man cat


"Как вырезать несколько файлов из сервера"
Отправлено Akmal , 11-Июл-06 18:04 
>>Измененный файл качается в директорию. А как сделать чтобы этот файл добавился
>>в определенный другой файл?
>man cat


Вообще-то у меня сейчас такой скрипт:
#!/bin/bash
DIR="/usr/local/ssrc/smc/stat"
FTP="some_ip"
USR="some_user"
PASS="some_pass"
d=`date '+%Y%m%d_%H%M%S'`
echo $d
cd $DIR
wget -m ftp://$USR:$PASS@$FTP/bill*

cd $DIR
for i in `ls $DIR/$FTP/bill*`; do
fni=`basename $i`
j=`ls $DIR/old/$fni`
if $i != $j
then
    cat $DIR/$FTP/$i>>$DIR/bill
    mv $DIR/$FTP/$i $DIR/old/$i
fi
done


d=`date '+%Y%m%d_%H%M%S'`
echo $d

Но почему то после скачивания дальше не хочет работать?


"Как вырезать несколько файлов из сервера"
Отправлено Akmal , 12-Июл-06 07:45 

Неужели никто не хочет помочь??????????????????????


"Как вырезать несколько файлов из сервера"
Отправлено жапо , 12-Июл-06 10:17 
да ты хзадрал своим фитипи
нфс юзай

"Как вырезать несколько файлов из сервера"
Отправлено Akmal , 13-Июл-06 15:06 
>Есть фтп-сервер. С помощью скрипта копирую один опреленный файл.
>Но мне надо чтобы он копировал весь каталог, потом удалил их из
>сервера. Это для того, чтобы в дальнейшем, когда на сервер выгружается
>очередные данные не искать которые из них новые файлы.
>
>Формат файла billyyyymmdd_hhmm00 (bill20060710_123000), ОС Slackware 10.0

С помощью
  -- wget -m "адрес" --
фтп-папка зеркалируется в локальную папку. Как перенаправить содердимое файла, которое скачивает на определенный файл
wget -m "адрес" >> result_file
или
cat wget -m "адрес"  result_file
или есть еще другие варианты???


"Как вырезать несколько файлов из сервера"
Отправлено dimus , 13-Июл-06 15:26 
Два скрипта.
Первый на клиенте - копирует все файлы. После чего выкладывает на сервер файл-подтверждение
Второй на сервере в кроне. Периодически смотрит директорию и, если найдет файл-подтверждение, грохает его и все, что надо.

"Как вырезать несколько файлов из сервера"
Отправлено xxxxxxxxxx , 13-Июл-06 16:03 
>С помощью
>  -- wget -m "адрес" --
>фтп-папка зеркалируется в локальную папку. Как перенаправить содердимое файла, которое скачивает на
>определенный файл
>wget -m "адрес" >> result_file
wget -m "адрес" -O - >> result_file