Форум русскоязычного сообщества Ubuntu


Получить помощь и пообщаться с другими пользователями Ubuntu можно
на irc канале #ubuntu-ru в сети Freenode
и в Jabber конференции ubuntu@conference.jabber.ru

Автор Тема: Автоматическое перемещение файлов в определенный каталог  (Прочитано 9397 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн cssnik

  • Автор темы
  • Новичок
  • *
  • Сообщений: 25
    • Просмотр профиля
Как сделать автоматическое перемещение файлов, с определённым расширением, из одной директории в другую каждые 3 часа?  :-\

Оффлайн Yurror

  • Старожил
  • *
  • Сообщений: 1966
    • Просмотр профиля
bash+cron - для тех кто по проще.
inotify+Си - для гурманов

Оффлайн cssnik

  • Автор темы
  • Новичок
  • *
  • Сообщений: 25
    • Просмотр профиля
Может кто-нибудь сделать готовое решение? ) А то я в bash полный нуб :-[

Оффлайн hippi90

  • Активист
  • *
  • Сообщений: 433
    • Просмотр профиля
Может кто-нибудь сделать готовое решение? ) А то я в bash полный нуб :-[
500 рублей.

Оффлайн Yurror

  • Старожил
  • *
  • Сообщений: 1966
    • Просмотр профиля
До сессии же вроде далеко
А в гугле ты тоже полный нуб?

Оффлайн easy2002

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 2786
  • Мурманск
    • Просмотр профиля
https://forum.ubuntu.ru/index.php?topic=70030.msg527153#msg527153

Пользователь решил продолжить мысль 15 Октября 2011, 20:32:54:
А в гугле ты тоже полный нуб?
ааа! он послал человеека в гугл!!
Tempora mutantur et nos mutantur in illis

Оффлайн Yurror

  • Старожил
  • *
  • Сообщений: 1966
    • Просмотр профиля
О боже он не только экзамен завалит но есчо и рефераты не научится гуглить.

Оффлайн cssnik

  • Автор темы
  • Новичок
  • *
  • Сообщений: 25
    • Просмотр профиля
Вы про меня?! Я уже закончил универ...  :P

Оффлайн S_F_H

  • Участник
  • *
  • Сообщений: 129
  • Да будет crossplatform!
    • Просмотр профиля
создай скрипт со следующим текстом

#!/bin/sh

for file in <путь к папке с файлами>/*.<нужное расширение> #например for file in Downloads/*.torrent
do
  mv -f $file <путь куда перемещать>  #например mv -f $file /Downloads/Torrents
done

exit(0)

а далее просто выполняй его как тебе надо. ЗЫ от рута запускай, если не с домашней дирректорией скрипт работает

Оффлайн cssnik

  • Автор темы
  • Новичок
  • *
  • Сообщений: 25
    • Просмотр профиля
Спасибо те, добрый человек!  :coolsmiley:

Всё работает, файлы перемещаются, только вот что пишет при запуске скрипта:
# ./move.sh
./move.sh: line 8: syntax error near unexpected token `0'
./move.sh: line 8: `exit(0)'

Оффлайн S_F_H

  • Участник
  • *
  • Сообщений: 129
  • Да будет crossplatform!
    • Просмотр профиля
хз... у меня все работает.
хотя exit служит для возврата статуса выполнения, в данном скрипте он не нужен и может быть удален.

Оффлайн cssnik

  • Автор темы
  • Новичок
  • *
  • Сообщений: 25
    • Просмотр профиля
Ок, без него тоже работает... спасибо

А возможноли сделать так, чтобы перемещало только все файлы, кроме последнего? Просто он ещё не готов, в него в реальном времени происходит запись или он не будет перемещён, т.к. будет занят процессом?

Оффлайн S_F_H

  • Участник
  • *
  • Сообщений: 129
  • Да будет crossplatform!
    • Просмотр профиля
а помоему он тупо не скопируется...

но можешь добавить условие типа if $file != <имя последнего файла>

Оффлайн cssnik

  • Автор темы
  • Новичок
  • *
  • Сообщений: 25
    • Просмотр профиля
Не, перемещается вместе с активным на запись...

По имени не получится, потому что оно каждый раз новое.

В папку записываются файлы и вот их нужно автоматом переносить... каждые 3 часа например, не затрагивая активный на запись...
« Последнее редактирование: 17 Октября 2011, 01:52:13 от cssnik »

Оффлайн Zloy1

  • Активист
  • *
  • Сообщений: 261
    • Просмотр профиля
тут более уместен вариант с http://wiki.opennet.ru/Incrontab
кажется тут нужно отслеживать событие закрытия файла, открытого на запись.
Попробуй сделать вот так:

/полный/путь/к/папке/где/появляются/файлы IN_CLOSE_WRITE /путь/к/скрипту/который/перемещает/файл $@/$#
« Последнее редактирование: 17 Октября 2011, 10:43:47 от Zloy1 »

 

Страница сгенерирована за 0.053 секунд. Запросов: 25.