Как рекурсивно перечислить все файлы и каталоги

Я решил, используя:

moveViewTo(0f,data.entryCount.f,YAxis.AxisDependency.LEFT)
28
задан Community 23 May 2017 в 12:18
поделиться

5 ответов

Как насчет этого:

find . -exec ls -dl \{\} \; | awk '{print $3, $4, $9}'
25
ответ дан James Brady 28 November 2019 в 02:34
поделиться

Используйте дерево . Немного дистрибутивов Linux устанавливают его по умолчанию (в этих темные дни только из графический интерфейсов пользователя :-), но это всегда доступно в стандартных репозиториях. Это должно быть доступно для *BSD также, видеть http://mama.indstate.edu/users/ice/tree/

Использование:

tree -p -u -g -f -i

или

tree -p -u -g -f

или проверка страница справочника для многих других полезных аргументов.

20
ответ дан Davide 28 November 2019 в 02:34
поделиться

find приближается:

find . -printf "%u %g %p\n"

существует также "%P", который удаляет префикс из имени файла, если Вы хотите, чтобы пути были относительно указанного каталога.

Примечание, что это - GNU, находит, я не знаю, находят ли BSD также поддержки-printf.

10
ответ дан Torsten Marek 28 November 2019 в 02:34
поделиться

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

use File::Find;
use File::stat;

find (\&myList, ".");

sub myList {
   my $st = lstat($_) or die "No $file: $!";

   print  getgrnam($st->gid), " ", 
          getpwuid($st->uid), " ", 
          $File::Find::name, "\n";
}
4
ответ дан slim 28 November 2019 в 02:34
поделиться

Используйте сценарий оболочки. Или сценарий Perl. Сценарий Perl в качестве примера (потому что для меня легче сделать):

#!/usr/bin/perl
use strict;
use warnings;
foreach(`find . -name \*`) {
  chomp;
  my $ls = `ls -l $_`;
  # an incomprehensible string of characters because it's Perl
  my($owner, $group) = /\S+\s+\S+\s+(\S+)\s+(\S)+/;
  printf("%-10s %-10s %s\n", $owner, $group, $_);
}

Возможно, более подробный, чем другие ответы, но должен добиться цели и должен сохранить Вас имеющий необходимость помнить, что ввести. (Код не протестирован.)

-4
ответ дан Chris Lutz 28 November 2019 в 02:34
поделиться
Другие вопросы по тегам:

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