subshell ls -lh & ldquo; $ (find / music -type d) & rdquo; не возвращает список, а результаты команды find

Я пытаюсь перечислить детали всех каталогов в моей музыкальной папке, используя следующую команду:

ls -lh "$(find /music -type d)"

Однако все, что я получаю, это возврат команды find. Правильно ли этот синтаксис? Я использую ubuntu server 10.04. Я думаю, что несколько месяцев назад я вспоминал об этом на gui ubuntu 10.04, и он, казалось, выдавал детали команды ls

2
задан 7 January 2012 в 11:44

1 ответ

Он работает без кавычек

ls -lh $(find /music -type d)

С кавычками ls -l видит поиск как один файл, а не список элементов. Посмотрите ближе на выход, вы не видите

ls: cannot access ...
list of find results
last item : No such file or directory
4
ответ дан 25 May 2018 в 15:23
  • 1
    Да, что меня насторожило, мои имена файлов содержат пробелы, поэтому я не могу выполнить команду ls по возврату команды find – user784637 7 January 2012 в 12:42
  • 2
    Здесь обсуждается askubuntu.com/questions/91072/… , который охватывает файлы с пробелами – Panther 7 January 2012 в 12:58

Другие вопросы по тегам:

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