Задать вопрос
semenenko88
@semenenko88
Системный администратор

Как изменить функцию bash чтобы она выполнялась правильно?

Написал вот такую функцию:
ldirs () { du -sh `ls -F "$@" | grep "/$" | sed -e 's/\/$//'`; }
Она выводит список каталога, ищет только подкаталоги, и в выводе убирает слеш. Дальше этот список каталогов передается в команду du -sh.
Вот как работает:
$ ldirs
49M GNS3
129K PDF
72M programm
512 Видео
26M Документы
31M Загрузки
13M Изображения
512 Музыка
512 Общедоступные
du: cannot access 'Рабочий': No such file or directory
du: cannot access 'стол': No such file or directory
1,0K Шаблоны

Каталог "Рабочий стол" имеет пробел в имени и каждое слово передаётся команде du. Вот как это поправить?
  • Вопрос задан
  • 190 просмотров
Подписаться 1 Простой Комментировать
Решения вопроса 1
jcmvbkbc
@jcmvbkbc
"I'm here to consult you" © Dogbert
find -maxdepth 1 -type d -not -name '.' -print0 | xargs -0 du -sh
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

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