Ответы:
Вы можете использовать Tabклавишу после нажатия несколько первых символов (это будет «заполнить» остальные папки для вас , например , типа cd ~/LTabзаполняет cd ~/Library/тот типа , ApTabи он будет заполнить остальные для вас.
Если между словами есть пробел, и вы не хотите использовать методы, описанные выше, поставьте \(обратную косую черту) перед пробелом, например cd ~/Library/Application\ Support.
shopt -s nocaseglobи bind 'set completion-ignore-case on'сделать bash менее чувствительным к регистру.
Основная проблема здесь заключается в том, как оболочка ( bash ) делает кавычки и как это влияет на раскрытие тильды и разбиение на «слова» (аргументы для запускаемой программы).
bash обрабатывает только ведущую тильду, если она не указана. Кроме того, следующий слеш также не должен быть в кавычках.
В то же время, bash анализирует командные строки в «слова» на основе пробелов без кавычек. cdКоманда , как правило , требуется ровно один аргумент (каталог назначения). Командная строка like cd foo barозначает запуск cdс двумя аргументами: fooи bar. Если вы хотите отправить только один foo barаргумент, то вам нужно заключить в кавычки пробел:
(например) cd foo\ bar(см. Пример цитирования ниже).
В вашей конкретной ситуации вы должны оставить тильду и следующую косую черту без кавычек при указании пробела в имени каталога. Ваша cd "~/Library/Application Support/"проба заканчивает тем, что цитирует слишком много (тильда и ее косая черта), в то время как ваша cd ~/Library/Application Support/проба цитирует слишком мало (она не цитирует пробел в имени каталога).
Наиболее распространенным решением является использование односимвольного экранирования для кавычки только пробела:
cd ~/Library/Application\ Support
Вы также можете использовать одинарные или двойные кавычки вокруг пробела или пробела и некоторых других битов этого аргумента (но не в ~/!):
cd ~/Library/Application' 'Support
cd ~/Library/Application" "Support
cd ~/Library/App'lication 'Support
cd ~/Library/Application" Supp"ort
cd ~/'Library/Application 'Support
cd ~/"Library/Application "Support
Эти виды цитат имеют разные значения, но они идентичны в этих примерах. Одинарные кавычки защищают буквенные строки, в то время как двойные кавычки допускают различные расширения и замены в указанном регионе.
Часто вы можете просто позволить оболочке сделать всю работу за вас.
Globbing (подстановочные знаки):
cd ~/L*/Ap*
Вы можете использовать, shopt -s nocaseglobчтобы сделать регистр нечувствительным к регистру:
cd ~/l*/ap*Завершение:
Нажатие Tabпосле ввода cd ~/L, вероятно, расширит его до cd ~/Library/.
Повторное нажатие Tabпосле ввода Ap(теперь у вас есть cd ~/Library/Ap), вероятно, расширит его до cd ~/Library/Application\ Support/(оболочка автоматически вставила экранирующий обратный слеш).
Вы можете использовать, bind 'set completion-ignore-case on'чтобы сделать регистр нечувствительным к регистру:
cd ~/l Tab→ cd ~/Library/; ap Tab→cd ~/Library/Application\ Support/
<kbd></kbd>тег HTML (один из нескольких тегов HTML, поддерживаемых в уценке SE ).
Когда вы дважды цитируете путь, вы останавливаете расширение тильды. Таким образом, есть несколько способов сделать это:
cd ~/"My Code"
cd ~/'My Code'
Тильда здесь не указана, поэтому расширение тильды все равно будет запущено.
cd "$HOME/My Code"
Вы можете раскрыть переменные окружения внутри строк в двойных кавычках; это в основном то, что делает расширение тильды
cd ~/My\ Code
Вы также можете экранировать специальные символы (например, пробел) с помощью обратной косой черты.
Вы можете попробовать это для разнесенных папок / файлов: Если имя файла или папки содержит 1) имя файла .extension, команда должна быть cd ~ / file \ name.extension / (или) cd ~ / "file name.extension" /