![Подстановочный знак в OS X Terminal не работает для некоторых путей](https://rvso.com/image/1417388/%D0%9F%D0%BE%D0%B4%D1%81%D1%82%D0%B0%D0%BD%D0%BE%D0%B2%D0%BE%D1%87%D0%BD%D1%8B%D0%B9%20%D0%B7%D0%BD%D0%B0%D0%BA%20%D0%B2%20OS%20X%20Terminal%20%D0%BD%D0%B5%20%D1%80%D0%B0%D0%B1%D0%BE%D1%82%D0%B0%D0%B5%D1%82%20%D0%B4%D0%BB%D1%8F%20%D0%BD%D0%B5%D0%BA%D0%BE%D1%82%D0%BE%D1%80%D1%8B%D1%85%20%D0%BF%D1%83%D1%82%D0%B5%D0%B9.png)
Ладно, это странно, надеюсь, кто-нибудь здесь сможет объяснить, что происходит.
Я использую OS X 10.9.4 и хочу вывести список файлов в каталоге (и отфильтровать их с помощью *)
Я хочу найти zip-файлы в каталогах «Загрузки» моего пользовательского каталога и каталоге моего сына.
Здесь показаны все файлы, включая те, которые заканчиваются на .zip: sudo ls /Users/Jamie/Downloads/
Но когда я пытаюсь отфильтровать их: sudo ls /Users/Jamie/Downloads/*zip
Я получаюNo such file or directory
Но эта же команда отлично работает в моем каталоге!?sudo ls /Users/Hamish/Downloads/*zip
На самом деле даже это приводит к No such file or directory
ошибке на его пути, но не на моем:sudo ls /Users/Jamie/Downloads/*
решение1
Расширение пути происходит во время запуска команды, поэтому его следует расширить до запуска sudo.
Вы можете создать новую оболочку внутри sudo с помощью:sudo sh -c "ls /Users/Jamie/Downloads/*.mp3"
решение2
Или вы можете использовать grep
для фильтрации результатов. Так что
$ sudo ls -l /Users/other/Library/Keychains/*keychain
ls: /Users/other/Library/Keychains/*keychain: No such file or directory
потерпит неудачу, но использование grep
будет работать
sudo ls -l /Users/other/Library/Keychains|grep .keychain
-rw-r--r-- 1 other staff 48K Jan 31 18:27 login.keychain
Кроме того, grep
с помощью этой опции можно выполнять поиск по нескольким элементам -e
.
$ sudo ls -laRh /Users/other/Library/Logs|grep -e Finder -e Google
-rw-r--r-- 1 other staff 18K Jan 31 18:27 GoogleSoftwareUpdateAgent.log
-rw------- 1 other staff 56K Jan 31 18:27 .Finder_2014-06-25-165714.crash.plist
-rw-------@ 1 other staff 52K Jan 31 18:27 Finder_2014-06-25-165714.crash
Надеюсь это поможет.