завершение zsh: получение имен файлов из определенного каталога

Используя grep -q опция намного более эффективна, чем замена команды.

if ! grep -q -e "^$2:" /etc/group; then
    echo "Error: $2 not a valid group" >&2
fi

Проблемой являются одинарные кавычки (') предотвратите расширение переменной оболочки ($). Необходимо использовать двойные кавычки (").

10
17.02.2013, 13:42
1 ответ
_files -W /Volumes

См. документацию _path_files.

12
27.01.2020, 20:02
  • 1
    Прекрасный! Я знал, что должен был быть встроен. Большое спасибо! –  Marshall Eubanks 17.02.2013, 17:03
  • 2
    Так, как я заставляю это автоматически загружать эту функцию завершения? Я пытался поместить compdef строка в файле _eject расположенный в моем fpath. Я попробовал его и без строки автозагрузки. Я посмотрел на несколько руководств о функциях завершения, и никто не покрыл, как сделать реальный простой пример как это и ничто, что я попробовал на основе любого из их работавших примеров. А-ч –  Marshall Eubanks 17.02.2013, 17:34
  • 3
    @marshaul Вы должны иметь #compdef eject как первая строка файла, затем реальный код. Посмотрите под автоматически загруженными файлами в руководстве. Если Вы не добавили строку сначала, Вы, возможно, должны удалить кэш в ~/.zcompdump и перезапуск zsh. –  Gilles 'SO- stop being evil' 17.02.2013, 20:27
  • 4
    AH! Удаление ~/.zcompdump добился цели. Еще раз спасибо! –  Marshall Eubanks 17.02.2013, 20:38

Теги

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