|
|
|
|
Google Site
|
|||||||
| Форумы | Регистрация | Блог | Человек Страницы | Правила форума | Ссылки | Альбомы | ЧАВО | Пользователи | Календарь | Поиск | Сегодняшние сообщения | Отметить форумы читать |
| Shell программирование и сценарии Почтовые вопросы о KSH, CSH, SH, BASH, Perl, PHP, SED, AWK и скрипты оболочки и оболочки скриптовых языков здесь. |
![]() |
|
|
Резьба Инструменты | Искать в этом Thread | Оценить Thread | Режимы дисплея |
|
|||
|
Список количество файлов, типы файлов
Я пытаюсь создать простой файл инвентаризации ряд огромных каталогов, содержащих электронной записи. Что я после представлен список всех каталогов и вложенных каталогов всего числа каждого типа файлов в этой директории / суб-директории. Например, вывод будет выглядеть следующим образом:
\ Главная \ erecords \ unit5007b (45 GIF, 78 JPG, 666 документов) Я пустячный с Java-программ, которые я обнаружил, что является немного за рамки - проверка файловых типов вывода XML и т.д. Я действительно нужно число файлов по типу файла. Любая Unix инструментов там, что будет мне ближе к этой цели? Спасибо, |
| Рекламные ссылки | ||
|
|
|
|||
|
Большое спасибо!
Именно это я пытался молотка вместе в течение нескольких дней!
У меня есть два последующих мероприятий: Я хочу, чтобы это рекурсивно перейти к подкаталогам также - я экспериментировал со своим сценарием немного добавить-R с первоначальным Ls команды, но их результаты не были обнадеживающими - было бы лучше иметь другую SH сценария, который выходит через дерево каталогов, и называет это одной на каждой директории? Также каталоги Я занимающихся много реже имена с пробелами в них, и этот скрипт запущен Ls только часть из реж имя перед пространство - опять же я попробовать некоторые вещи, и я угадал, что изменения необходимы В этом битные, но я не могу понять его совсем: LS-L | grep "^ D" | AWK '(печати $ 9)' | grep-V "^ \". > P_WORK_DIR этого становится все реже и имена AWK является печать и что? то, что в прошлом grep является устранение "\". От имени? |
|
||||
|
Neat сценарий. Не было известно о-с возможностью Uniq. Делает задачу намного легче. Я сделал вариант сценария, что делает рекурсии: Код:
find $1 -type d | while read DIR ; do
echo "$DIR"
ls -l "$DIR" | awk -F. '$2 !~/^$/{print $2}' | sort | uniq -c | tr "\n" "," | tr -s " "
echo
doneРезультат выглядит следующим образом: Код:
/home/nobody/var/www/manual/mod 204 html, /home/nobody/var/www/manual/mod/mod_python 1 css, 99 html, /home/nobody/var/www/manual/mod/mod_python/icons 7 gif, 7 png, Запустите его, как: scriptname / каталог Последний раз редактировалось Autocross.US; на 12-04-2008 12:56 PM.. Причина: обновление для обработки каталогов с пробелами в имени |
|
|||
|
Тем не менее борьба с пробелами в именах файлов
в этой строке: Код:
ls -l | grep "^d" | awk '{print $9}' | grep -v "^\." >P_WORK_DIRкак я могу добавить одно котировки в обе стороны от реж имя, которое сохраняется в P_WORK_DIR? Так что в этом списке в реж имя / HAS Пространства / будет сохранен как "HAS пространств" Я надеялся, что будет делать трюк в получении Ls команду для работы над каталогами с пробелами в имени ... |
|
|||
|
Сценарий (позволяет называть его filetype.sh): Код:
for file in `ls` do file $file done Сейчас: Код:
sh filetype.sh > typeofeachfileindir.txt sed -n -e 's/.*: \(.*\)/\1/p' typeofeachfileindir.txt | sort | uniq > filetypesindir.txt cat filetypesindir.txt | while read filetype do cat typeofeachfileindir.txt | grep $filetype | wc -l | echo -n $filetype": " done rm typeofeachfileindir.txt rm filetypesindir.txt Это следует проверить файлы в файлы в директорию на основе их данных не продления. Я оставляю директорию рекурсии до вас. Надеюсь, что это помогает. |
|
||||
|
Еще один путь расширения: Код:
find . -type d |
perl -nle'
map @_{/([^.]+?)$/}++, grep -f, glob "$_/*.*";
print "\t---> $_\n", join ", ", map "$_: $_{$_}", keys %_;
undef %_
'Последний раз редактировалось radoulov; на 12-05-2008 05:08 AM.. Основание: refactored |
| Рекламные ссылки |
|
|
![]() |
| Закладки |
| Теги |
| каталог, дескриптор файла, тип файла |
| Резьба Инструменты | Искать в этом Thread |
| Режимы дисплея | Оценить эту ветку |
|
|
Подробнее UNIX и Linux Темы форума можно найти полезные
|
||||
| Нить | Резьба для начинающих | Форум | Ответы | Последнее сообщение |
| Ls> Файл - Создание файла, содержащего список всех файлов в каталоге | pranavagarwal | Shell программирование и сценарии | 1 | 09-26-2008 09:37 PM |
| Поиск дубликатов файлов с multuple сравнению с 2 типами файлов | ricky007 | Shell программирование и сценарии | 2 | 03-04-2008 01:46 PM |
| Выбор файлов, основанный на его типы | ganapati | UNIX перспективных И опытных пользователей | 3 | 02-04-2008 10:09 AM |
| Найти каталог с 2 типами файлов | dangral | UNIX для чайников Вопросы И Ответы | 2 | 10-13-2004 02:51 PM |
| файла из файла, который в списке файлов. | yls177 | UNIX для чайников Вопросы И Ответы | 3 | 04-10-2003 12:30 PM |