С помощью терминала: найдите и скопируйте список файлов

Привет всем читателям 😀

После неудачного отпуска я соизволил написать эти строки. Оказалось, что мой mp3-плеер 32 ГБ был поврежден, и единственный способ восстановить его - отформатировать его, это не проблема, меня действительно огорчила мысль о времени, которое потребуется мне, чтобы выбрать и скопировать музыкальную коллекцию, которую я так много вкуса сделали.

При этом я вспомнил, насколько мощным может быть терминал для таких случаев, и после нескольких минут чтения документации (Я не лучший в игре 😛) Добрался до такого способа:

1. Я составил список всех файлов в плеере:

каталог / медиа / musicplayer> музыкальный_лист

2. После создания этого списка мы применяем следующую команду:

 кот music_list | пока читал f; действительно найти. -name "$ f" -exec cp {} / media / musicplayer \ ;; сделанный

кошка прочтите список, затем, найдите отвечает за их поиск и, наконец, cp копирует его в папку назначения в цикле, пока не будет прочитана последняя строка файла.

и готово!

Путь работы консоли меняется, верно?

Я уверен, что это может быть полезно в более продуктивных занятиях (и менее тривиальных, чем мой игрок, хахаха), и, конечно, были бы другие способы достичь той же цели (возможно, используя Rsync o xargs), но мне показалось, что это был самый простой способ добиться этого.


Содержание статьи соответствует нашим принципам редакционная этика. Чтобы сообщить об ошибке, нажмите здесь.

46 комментариев, оставьте свой

Оставьте свой комментарий

Ваш электронный адрес не будет опубликован.

*

*

  1. Ответственный за данные: Мигель Анхель Гатон
  2. Назначение данных: контроль спама, управление комментариями.
  3. Легитимация: ваше согласие
  4. Передача данных: данные не будут переданы третьим лицам, кроме как по закону.
  5. Хранение данных: база данных, размещенная в Occentus Networks (ЕС)
  6. Права: в любое время вы можете ограничить, восстановить и удалить свою информацию.

  1.   Elav сказал

    Ой! Отлично

  2.   Вампи сказал

    Эээ…. »Dir» ???? Вы правильно прочитали и использовали ли вы команду "dir"? WTF !!! Это команда "ls" ... DIR - это команда DOS, а не * nix (или GNU / Linux) ... Я знаю, что я старый Slacker, но нет ли там ошибки?

    В остальном отлично! хороший способ быть ленивым - использовать консоль

    1.    элиотайм3000 сказал

      Мы такие же в этой точке DIR, поскольку в POSIX LS используется как его замена.

      Человеку свойственно ошибаться.

    2.    перец сказал

      `мужской директор`

      1.    Elav сказал

        Точно. DIR тоже есть в наших дистрибутивах 😛

    3.    Elav сказал

      Фактически, когда я бегу:

      man dir

      Посмотри, что я получаю в конце:

      АВТОР Написано Ричардом М. Столлманом и Дэвидом Маккензи.
      1.    Жискар сказал

        Посмотри на себя! Но это недавно, не так ли? Потому что несколько лет назад, когда я начал использовать Linux, я по привычке писал dir вместо ls и нарисовал один!

      2.    элиотайм3000 сказал

        Я снимаю то, что я omenté из DIR.

    4.    Елена_рюу сказал

      Я сам сказал, что я полный n00b в bash xDDD, извините, если я обидел вас dir hahaha, правда, я знаю, что это ls, но в тот момент я только вспомнил, что сказал ... это был просто список файлов

      1.    элиотайм3000 сказал

        Не волнуйтесь. Точно так же я не слишком часто использую bash, так что мы под рукой.

        1.    элиотайм3000 сказал

          И, кстати, я предлагаю вам попробовать Iceweasel (он в AUR, а логотип красивее, чем у Firefox).

          ????

          1.    Елена_рюу сказал

            Я попробую ^^

          2.    Elav сказал

            В конце концов, это то же самое. Зачем устанавливать Iceweasel, если у нас уже есть Firefox в репозиториях?

          3.    печенье сказал

            Элиот, он такой же, как Firefox, но с более уродливым логотипом ¬¬, а затем отдельно находится в AUR

          4.    элиотайм3000 сказал

            @куки:
            Это зависит от того, как вы это видите, потому что до сих пор я не видел новой версии логотипа Iceweasel с «плоским» дизайном или с возможностью отправки моих данных в Mozilla, чтобы узнать, работает он хорошо или нет.

            То, что логотип Iceweasel вам не нравится, это нормально, я уважаю ваше решение.

      2.    Сэм Бургос сказал

        Не беспокойтесь, что в обмен на то, что вы сломаете себе голову с помощью bash, вы больше не захотите делать что-то на других языках, так как вы не можете найти где 😀 (мой частный случай), кроме того, его хорошо использовать для работы в нескольких дистрибутивы

        Что касается вашего скрипта, я потрудился немного привести его в порядок и поместил в pastebin, хотя я хотел бы знать некоторые параметры того, для чего они нужны, потому что я их не очень понимаю (я исследую, когда я дома, так как на работе я связан по рукам и ногам)

        Скрипт -> http://pastebin.com/3c1zwS5y

        1.    Елена_рюу сказал

          Действительно, вы оставили его более аккуратным, я собирался сделать это так, но…. почему-то я помню аранжировки (насколько они заставляют меня страдать на уроках программирования), поэтому лучше оставить это в одной строке, хахаха

          1.    Сэм Бургос сказал

            Что ж, полезно заказывать коды, потому что в противном случае их будет сложно понять позже (как документалист / аналитик / программист, это большая боль, и я говорю вам из своего собственного опыта)

            И еще кое-что с bash, с удовольствием предлагаю помочь, я тоже не мастер в этом, но среди языков, которые мне нравится использовать (и которые у меня самые запыленные: P), это один из них, хотя для того, кто якобы является новичком в bash, вы оставили меня думать, что делает сам код itself 😛

    5.    Хаобаобатусаи сказал

      тест, запустив dir

    6.    экномус сказал

      Нет ошибки, вы также можете использовать команду DIR в Linux, было бы более элегантно использовать LS, но для получения списка файлов DIR он работает нормально, потому что в настоящее время большинство дистрибутивов имеют по умолчанию псевдоним dir = 'ls -l по умолчанию.

  3.   элиотайм3000 сказал

    Совет понравился. Я надеюсь, что будет написано больше руководств о многих вариантах использования консоли GNU / Linux, которая действительно превосходит консоль Windows.

    1.    КЗКГ ^ Гаара сказал

      Отметьте здесь 😉 - » https://blog.desdelinux.net/tag/terminal/

      1.    элиотайм3000 сказал

        Публикация и добавление в избранное.

  4.   Д. Адриан сказал

    Простите за незнание, но правда в том, что я почти ничего не понял: первая команда, dir, составляет список файлов, которые находятся внутри папки, затем, насколько я понимаю, находка будет искать один за другим те файлы, которые описаны в этом списке, и скопируйте их в другую папку. Я спрашиваю, зачем вам их искать, если я уже знаю, что они находятся в / media / musicplayer, и достаточно только скопировать эту папку в другое место назначения.
    Не будет ли в / media / musicplayer всевозможных файлов, а я хочу найти, скажем, только mp3 и скопировать их на другую сторону? И будет ли в первой команде фильтр, чтобы он только перечислял mp3?
    Если бы кто-нибудь мог лучше объяснить, в чем проблема и что я хочу делать?
    Спасибо и извините.

    1.    Елена_рюу сказал

      Ну, как вы говорите, если проще просто скопировать файлы на другую сторону, проблема, с которой я столкнулся, заключалась в том, что файлы были нечитаемыми в Linux и в Windows, поэтому мне нужно было только отформатировать их 😛 и снова заполнить. дал лень по этой причине.
      Что касается того, что вы говорите о фильтрации, я думаю, вам следует добавить флаг -o и -name к команде find, примерно так:
      находить. \ (-name '* .jpg' -o -name '* .png' -o -name '* .JPG' -o -name '* .PNG' -o -name '* .JPEG' -o -name ' * .jpeg '\)
      в этом случае он будет фильтровать только файлы * .jpg, * .JPG, * .png, * .PNG, * .jpeg и * .JPEG.

  5.   гексборг сказал

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

  6.   Dcoy сказал

    Какой была бы наша жизнь без мощной консоли: 3 ... .

  7.   Он прошел здесь сказал

    очень хорошо у меня есть
    псевдоним listen = 'echo "$ (find $ (pwd) -iname" * .MP3 ″) "| xargs -n1 -I aa ln -s "aa" $ HOME / listen / '

    1.    Дэвидлг сказал

      очень похож на тот, который я использую, чтобы переместить файлы, передача которых завершилась
      [код] find -iname "* .avi" | xargs -i mv {} / home / wizord / Videos /
      [/ Код]

  8.   Уриэль сказал

    Извините за незнание, но я тоже не совсем понял порядок и поэтому не знаю, применимо он или нет к тому, что я хочу сделать.
    У меня есть iPod 160-го поколения 6 ГБ, который, когда я хочу сделать резервную копию, пока не стало слишком поздно, однако я не знаю, могу ли я с помощью того, что вы пишете, разделить музыку по плейлистам, поскольку есть много песен с Это одно и то же имя, но на разных альбомах или исполнителях, могу я объяснить? вот почему я не могу просто скопировать файлы .mp3 в одну папку, потому что это будет конфликтовать с песнями с тем же именем. Могу ли я сделать резервную копию с помощью предложенных вами команд или есть еще какая-то альтернатива?
    Надеюсь, ты сможешь мне помочь, спасибо !!

    ps: Я думал установить на него Rockbox, но он несовместим с моим ipod согласно странице разработчика
    pd2: gtkpod, по-видимому, также копирует только .mp3 без заказа, или, может быть, я не знал, как это сделать.

  9.   Truko22 сказал

    Это здорово 😀

  10.   элиотайм3000 сказал

    Что ж, каждый может использовать тот браузер, который хочет.

    Я использую Iceweasel в Debian с ветвью выпуска mozilla.debian.net, и я не против тех, кто использует этот браузер.

    Я только предложил @helena попробовать Iceweasel, потому что Iceweasel определяет, что у него довольно симпатичный логотип (который многим не нравится), но не пугайтесь.

    В любом случае, я использую Iceweasel в Debian, потому что мне лень устанавливать Firefox, а у меня уже есть Firefox в Slackware, и у меня все отлично.

    1.    Elav сказал

      Очистить. Я имею в виду, что Firefox уже упакован в репозиторий. Iceweasel придется устанавливать из AUR со всеми вытекающими отсюда рисками.

      1.    элиотайм3000 сказал

        А, хорошо. Конечно, было бы желательно заменить Firefox на Iceweasel, поскольку я пробовал использовать оба браузера, но оба не могут быть запущены одновременно.

        Как только я закончу экспериментировать со Slackware, я создам виртуальную машину, на которую я установлю Arch с Iceweasel и облегченным интерфейсом (XFCE или LXDE).

    2.    Елена_рюу сказал

      [не по теме]
      хахаха, без проблем, я знаю, что в конце концов это firefox с другим логотипом, и это правда, он в aur, что может быть несколько рискованно, дело в том, что crunchbang установлен на ПК моей сестры (и for ende iceweasel) и действительно, что логотип очень кавайный ^^ Я не понимаю, почему кому-то он не нравится ~ _ ~
      [/ не по теме]

      1.    элиотайм3000 сказал

        Что ж, мне нравится логотип Iceweasel. По крайней мере, я рад тем дням, когда меня перевернули с ног на голову.

  11.   элиотайм3000 сказал

    Извините за не по теме, но комментировать из Opera Mini действительно неудобно.

    1.    Зиг84 сказал

      несколько неудобно, но улучшилось с изменением комментариев.

  12.   перец сказал

    хорошая работа

  13.   Эммануэль сказал

    Совет более чем интересен и полезен, но можно ли сделать так, чтобы он запускался каждый раз, когда вставляется usb? 😮
    Было бы здорово синхронизировать определенные папки на USB с системой.
    Привет и отличный вклад.

  14.   Маврикий сказал

    хахаха, и что ты нуб в баше.

    Это одна из причин, почему я влюбился в терминал, потому что я очень быстро делаю некоторые вещи.

    1.    элиотайм3000 сказал

      И это правда. Кроме того, она намного лучше, чем консоль Windows.

  15.   Пепе Лопес сказал

    Отличный совет. Я сохраню это.

  16.   Beegoqui сказал

    Спасибо ! … Очень помог!

  17.   Король сказал

    У кого-то есть файл bash, который я копирую из linux по следующему адресу /var/log/apt/history.log на адрес в Windows D: / Скопируйте файл history.log

  18.   Король сказал

    У кого-то есть файл bash, который я копирую из Linux по следующему адресу /var/log/apt/history.log на адрес в Windows D: / Скопируйте файл history.log, отправьте его мне на электронную почту rey79cm@gmail.com

bool (истина)