Выберите Top N файлов на основе даты изменения и rsync их

Я довольно новичок в Linux, и я пытаюсь перенести некоторые N файлов на основе даты модификации.

Я нашел эту команду ls -tr | head -100, которая, насколько я понимаю, перечислит Топ-100 файлов ( N Основано на Дата модификации (-t, новее вначале), но наоборот (-r меняет список, так что теперь он самый старый?). [!d3 ]

Но затем на следующем шаге, который будет -t, новее первым) , я все еще не могу понять, могу ли я использовать , но наоборот ( символ трубы) или & amp; & amp; -r меняет список, так что он самый старый?)

, поэтому на данный момент у меня есть это: ls -tr | head -350 | rsync * <remote-host>, но, судя по всему, rsync * передаст все. Поэтому я застрял с этим пока. Должен ли я помещать первые 2 команды в rsync? или я могу использовать команду awk?

любая помощь / голова приветствуются.

1
задан 10 October 2014 в 11:37

1 ответ

Если вы точно знаете, что имена файлов не содержат символы пробелов или не ASCII, вы можете использовать

rsync `ls -tp | grep -v / | head -n <n>` <destination> <options>
0
ответ дан 24 May 2018 в 03:00
  • 1
    Я действительно думал о чем-то подобном, но я просто не могу заставить его работать в последний раз. Можете ли вы объяснить, что означает grep -v /? – paacharon3 13 October 2014 в 11:27
  • 2
    Он удаляет все каталоги с выхода ls, используя косую черту, добавленную с помощью -p. – Jan 13 October 2014 в 15:09

Другие вопросы по тегам:

Похожие вопросы: