Как перечислить только последнюю строку каждого каталога?

[1123972]В вашем [1124434]yum[1124435], вероятно, есть только пакеты для версии Python, используемой операционной системой (можно обмениваться, установлен пакетный менеджер, нативные питоновые модули между различными версиями, но это сложнее сконфигурировать).
  • Лучшим вариантом для вас будет установка pip для вашего [1124436]/usr/local/python27[1124437], загрузив
  • get-pip.py[1124499], как описано в руководстве [1124439], а затем запустив его с помощью python2. 7 исполняемый файл:
  • Вам нужно сделать это только один раз, и это даст вам команду [1124440]pip2.7[1124441], которую вы можете использовать для установки любого пакета из PyPI в установку Python 2.7.[1123977].
  • 1
    27.03.2015, 00:40
    2 ответа

    Вероятно, это было бы лучше: комбинация находки и оболочки

    find / -type d -print0 | while read -r -d '' dir; do 
        ls -ltr "$dir" | sed '$!d'
    done
    

    Найти выводит каждый найден каждый каталог, используя нулевой байт вместо новой линии для их разделения. Этот поток подается в , а цикл , используя , с помощью READ -D '' , чтобы извлечь каждое имя каталога NULL-DELIMITED. Затем для каждого каталога все, кроме последней строки LS , вывод удаляется SED .

    Ключ заключается в том, что в то время как петля ITEERATED по каждому имени каталога, поэтому самый последний файл найден для каждого каталога.

    Одна большая проблема с этим в том, что вывод ls -l не показывает вам имя каталога, поэтому вывод, вероятно, не будет иметь большого смысла - вы видите файлы, но, не зная, какой каталог они появляются В.

    Чтобы найти новейший файл в каждом каталоге, я бы сделал это:

    find . -type f -printf "%h:%T@:%p\n" |
    sort -t: -k1,1r -k2,2nr |
    awk -F: '!seen[$1]++ {print $3}'
    
    • Найти , чтобы получить , чтобы получить каталог, время мода и имени пути
    • Сортировать в группу по каталогу и сортировать Время
    • awk Чтобы распечатать путь, который является первым для каждого каталога
    2
    27.01.2020, 23:20

    Я бы использовал такую конструкцию в качестве отправной точки

    find / -type d -print0 | xargs -0 -I'{}' sh -c 'ls -ltr {} | tail -1'
    

    Caveat: ей не нравятся пустые каталоги (total 0 is output).

    2
    27.01.2020, 23:20

    Теги

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