Я пытался выяснить размеры некоторых подкаталогов в общей папке, и мне было интересно, есть ли там «однострочный», который может это сделать (для всех вас, сумасшедшие ребята из awk) ...
Единственный сбой в моей ситуации - у меня могут не быть разрешения на некоторые подпапки, поэтому размер каталога будет наилучшим, поскольку мы можем получить ответ «отказано в доступе» на рекурсивныйкоманда.
Вот что я придумал:
#!/bin/bash
DIR=/my/shared/folder/*
for d in $DIR
do
if [ -d $d ]
then
dirsize=$(du -sh $d 2>/dev/null | cut -f1)
echo "$dirsize - $d"
fi
done
Значение 2>/dev/null
важно из-за проблемы с разрешениями, которая может возникнуть, поэтому мы не хотим видеть ошибки.Я также хочу увидеть весь путь, поэтому
Кто-нибудь знает более творческий способ сделать это?Я полагаю, что find
в сочетании с awk
в некотором объеме может генерировать один вкладыш, необходимый для этого.