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


Считаете, что Ubuntu недостаточно дружелюбна к новичкам?
Помогите создать новое Руководство для новичков!

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

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

Оффлайн GooG1e

  • Автор темы
  • Активист
  • *
  • Сообщений: 260
    • Просмотр профиля
Всем привет  - собрался немного каталогизировать свою коллекцию фильмов(фильмов много, большинство скачаны с торрентов и соответственно имена у них не всегда понятные, поэтому хотелось бы перевести как-то)
Как вариант я думал создать ссылки на эти файлы. Поэтому решил написать небольшой скрипт на bash.
Как я считаю - нужно создать грубо говоря копию структуры одной папки, только заменяя файлы на ссылки.
Проблему выборки файлов я решил - find папка -type d|f и все файлы папки я нашел, но есть другая проблема - как выбрать их по очереди(могут быть пробелы в пути)

andrey_p

  • Гость
Re: Создание ссылок на файлы в папке
« Ответ #1 : 25 Июня 2011, 16:39:47 »
find ... | while read -r f
  # $f доступна только внутри цикла
  echo $f
done

Надеюсь, начальных и конечных пробелов и символов перевода строки в именах файлов нет.

Оффлайн GooG1e

  • Автор темы
  • Активист
  • *
  • Сообщений: 260
    • Просмотр профиля
Re: Создание ссылок на файлы в папке
« Ответ #2 : 25 Июня 2011, 17:12:31 »
можно ещё немного помощи
У меня вот такой код
#!/bin/bash
find "$@" -type d | while read -r f;do
        mkdir \"${f/"/home/share/Видео"/"/video"}\";

done
Почему-то при создании папки он начинает разбивать на отдельные в местах пробелов,хотя там все экранировано , а те что нормально идет пишет невозможно создать нет такого файла или каталога

andrey_p

  • Гость
Re: Создание ссылок на файлы в папке
« Ответ #3 : 25 Июня 2011, 18:12:20 »
Перед любыми деструктивными действиями делай так:

#!/bin/bash
find "$@" -type d | while read -r f;do
       echo mkdir \"${f/"/home/share/Видео"/"/video"}\";
done

Можно еще добавить (здесь перебор, но на будущее полезно):
#!/bin/bash
set -xv

Все должно быть сразу понятно. Мне, кстати, не совсем понятно, что собираешься сделать. Похоже тебе надо
echo mkdir -p "${f/share\/Видео/video}"

Оффлайн GooG1e

  • Автор темы
  • Активист
  • *
  • Сообщений: 260
    • Просмотр профиля
Re: Создание ссылок на файлы в папке
« Ответ #4 : 25 Июня 2011, 19:14:55 »
Я просто воссоздаю структуру папок аналогичную другой папке, чтобы спокойно работать с именами т.к. у меня эти фильмы ещё и по торрентам раздаются

 

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