поэтому я пытаюсь сделать следующее:
Когда rtorrent заканчивает загрузку, он должен скопировать файлы из каталога загрузок в другой каталог, называемый uploads, чтобы файл находился в каталоге Downloads и в каталоге Uploads.
До этого я использовал функцию mv для перемещения файла из раздела «Загрузки» в раздел «Загрузки». Вот рабочий пример, чтобы вы могли понять синтаксис rtorrents:
system.method.set_key = event.download.finished,move_complete,"execute=mv,-u,$d.get_base_path=,~/uploads/"
Это рабочий предварительный просмотр, он выполняет "mv -u / home / downloads / folder1 / ~ / uploads /", поэтому в основном он перемещает торрент с тем же именем просто в другой каталог.
То, что я НЕ понимаю, как я могу копировать файлы (папки и файлы, в зависимости от того, что я загружаю) с тем же именем, скажем:
/home/dl/harry potter/ ------> /home/ul/harry potter/
и следующий может быть
/home/dl/ubuntu.iso ------> /home/ul/ubuntu.iso
Ответы:
Возможно, вы захотите использовать
cp -a
, который будет рекурсивно копировать и сохранять права доступа к файлам и папкам. То есть, если вы действительно хотите скопировать все файлы. Подсказка: в этом нет необходимости.cp -al
в конечном итоге то, что вы хотите использовать. Концепция ссылок в системах Unix намного сложнее (и полезнее), чем в Windows. TomMD предлагает вам использовать «мягкие ссылки», под которыми я предполагаю, что он подразумевает символические или символические ссылки.cp -l
создает жесткие ссылки, однако.Файлы в файловой системе Unix на очень высоком уровне состоят из данных на диске и одной или нескольких жестких ссылок, которые указывают на эти данные. Вы получаете доступ к данным, указывая ваши программы по этим ссылкам. Когда группа данных имеет нулевые жесткие ссылки, указывающие на нее, она считается удаленной.
Если вы понимаете это, вы, вероятно, уже думаете о том, как это круто. Вы можете иметь несколько ссылок на одну «группу данных», без лишних накладных расходов, связанных с тем, что у вас будет несколько копий. Вы можете рассматривать эти жесткие ссылки как обычные файлы во всех случаях, включая перемещение, копирование, чтение и запись.
источник