Как перейти в каталог в C: с Cygwin?
Я пытаюсь установить PyQt4 так что я могу с ним возиться. В руководстве по установке говорилось, что я должен был установить Sip. Последний шаг к установка Sip использовать . У Windows этого нет, поэтому я посмотрел его и все, что я видел, сказал установить Cygwin. Так я и сделал. Но...СИП в C:Python31sip.
могу ли я запустить это из команды Cygwin? Если да, то как бы я это сделал?
или я могу запустить это из нормального командная строка windows? Если да, то как мне это сделать?
13 ответов:
Я добавлю что-то, что очень помогает мне с cygwin. Всякий раз, когда настраивается новая система, я всегда делаю это
ln -s /cygdrive/c /cэто создает символическую ссылку до
/cygdrive/cС Новым файлом под названием/c(в домашнем каталоге)затем вы можете сделать это в командной строке
cd /c/Foo cd /c/очень удобно.
вы уже приняли ответ, но я просто подумал, что упомяну, что в Cygwin также работает следующее:
cd "C:\Foo"Я думаю
cd /cygdrive/cметод лучше, но иногда полезно знать, что Вы тоже можете это сделать.
Как вы, вероятно ,захотите делать это часто, добавьте псевдонимы в свой.файл bashrc, как:
alias cdc='cd /cygdrive/c' alias cdp='cd /cygdrive/p'затем вы можете просто ввести в командной строке:
cdc
в соответствующей заметке вам также может понравиться:
shopt -s autocdЭто позволяет вам cd a dir, просто набрав в dir
[user@host ~]$ /cygdrive/d cd /cygdrive/d [user@host /cygdrive/d]$- это настойчивый, вы должны добавить его в свой
~/.bashrc
определите переменную in .bashrc следующее :
export C=/cygdrive/cзатем вы можете использовать
cd $C/вкладка правильно autocompletes (пожалуйста, включите / в конце)
создайте файл с именем "overrideBashCdForWindowsPaths" в вашей домашней папке. Вставьте следующие строки в этот файл и сохраните его:
#!/bin/bash function cd() { CD_PATH="$(history | tail -1 | sed -e "s,.*${FUNCNAME[0]}\s*,,g")" if [ -z "${CD_PATH}" -o "${CD_PATH}" = "~" ]; then CD_PATH="${HOME}" fi builtin cd "$(cygpath "$CD_PATH")" }затем введите следующую команду в терминале, пока вы находитесь в своей домашней папке:
echo ". overrideBashCdForWindowsPaths" >> .bashrcзакройте терминал и откройте новый. Теперь вы можете легко перейти в эту папку Windows, просто набрав
cd C:\Python31\sipскрипт считывает последнюю команду, извлекает путь и передает его в Cygwin путь-инструмент преобразования. Называя функцию "cd", мы как бы" переопределяем "встроенный" cd " Bash и делегируем ему фактический вызов в самой последней строке.
что-то, что стоит упомянуть здесь, это то, что Cygwin's
cygpath, по-прежнему не обрабатывает разнесенные пути Windows должным образом, особенно в сценариях Bash, работающих под управлением Cygwin. Фокус в том, чтобы понять, какCygwinинтерпретирует кавычки в скриптах Bash.ниже ли не работы:
#!/bin/bash TBDIR="/cygdrive/c/Program\ Files\ \(x86\)/MyDir/" if [ -d "${TBDIR}" ]; then echo "Found MyDir directory at: ${TBDIR}" cd "$TBDIR" else echo "MyDir program directory not found!" echo "Wrong DIR path: ${TBDIR}" exit 1 fiно это работает:
#!/bin/bash # Cygwin-ism: No quotes! TBDIR=/cygdrive/c/Program\ Files\ \(x86\)/MyDir/ if [ -d "${TBDIR}" ]; then ...насколько я знаю, в настоящее время нет известного обходного пути с помощью
cygpath, который может правильно обрабатывать пробелы в контекст сценария bash, но вы можете использовать кавычки в своих сценариях.
тот, который мне нравится:
cd C:чтобы иметь linux, как чувствовать, то делать:
ln -s /cygdrive/c/folder ~/folderи использовать это как:
~/folder/..
Comments