У меня есть структура каталогов, как показано ниже
output / a / 1 / multipleFiles
output / a / 2 / multicFiles
output / a / 3 / multipleFiles
output/ b / 1 / multipleFiles
output / b / 2 / multipleFiles
output / b / 3 / multipleFiles
Я хочу узнать количество строк в каждом каталоге.Таким образом, в основном, количество строк на каждом внутреннем уровне каталогов вместо уровня файлов.Самые внутренние каталоги 1, 2, 3 - это различные виды вывода, которые мы генерируем для нашей аналитики, которая содержит несколько файлов hadoop part-xxxx.
Я перешел в выходной каталог и попробовал следующую команду.
find . -maxdepth 2 -type d -name '*' | awk -F "/" 'NF==3' | awk '{print $0"/*"}' | xargs wc -l
Но я получаю сообщение об ошибке:
wc: ./a/1/*: No such file or directory
wc: ./a/2/*: No such file or directory
wc: ./a/3/*: No such file or directory
, но если я пытаюсь
wc -l ./a/1/*
Я получаю правильный вывод для этой конкретной папки.
Чего мне здесь не хватает.
РЕДАКТИРОВАТЬ:
Я обновил свою команду, как показано ниже, чтобы удалить ненужныекоманды awk.
find . -mindepth 2 -maxdepth 2 -type d -name '*' | xargs wc -l
Это снова приводит к ошибке как
wc: ./a/1: Is a directory
wc: ./a/2: Is a directory
wc: ./a/2: Is a directory