J'essaye d'installer PyQt4 pour que je puisse déconner avec ça. Le guide d'installation disait que je devais installer Sip . La dernière étape de installer Sip consiste à utiliser la commande make install
. Windows ne l'a pas, alors j'ai regardé et tout ce que j'ai vu dit d'installer Cygwin. Donc j'ai fait. Mais ... sip est dans C:\Python31\sip
.
Puis-je l'exécuter à partir de la commande Cygwin? Si oui, comment ferais-je cela?
Ou puis-je l'exécuter à partir de l'invite de commande Windows normale? Si oui, comment pourrais-je m'y prendre?
Utilisation:
cd /cygdrive/c
Je vais ajouter quelque chose qui m'aide beaucoup avec cygwin. Chaque fois que je configure un nouveau système, je le fais toujours
ln -s /cygdrive/c /c
Cela crée un lien symbolique vers /cygdrive/c
avec un nouveau fichier nommé /c
(dans le répertoire de base).
Ensuite, vous pouvez le faire dans votre shell
cd /c/Foo
cd /c/
Très utile.
cd c:
est maintenant supporté par cygwin
Vous avez déjà accepté une réponse, mais je pensais juste que je mentionnerais que ce qui suit fonctionne également dans Cygwin:
cd "C:\Foo"
Je pense que la méthode cd /cygdrive/c
est meilleure, mais il est parfois utile de savoir que vous pouvez le faire aussi.
Comme vous voudrez probablement le faire souvent, ajoutez des alias dans votre fichier .bashrc, comme:
alias cdc='cd /cygdrive/c'
alias cdp='cd /cygdrive/p'
Ensuite, vous pouvez simplement taper sur la ligne de commande:
cdc
Vous pouvez simplement utiliser
cd C:/Users/../..
Sur une note connexe, vous pourriez aussi aimer:
shopt -s autocd
Cela vous permet de créer un répertoire en tapant simplement le répertoire
[user@Host ~]$ /cygdrive/d
cd /cygdrive/d
[user@Host /cygdrive/d]$
Pour que le processus soit persistant, vous devez l'ajouter à votre ~/.bashrc
Définir une variable dans .bashrc:
export C=/cygdrive/c
alors vous pouvez utiliser
cd $C/
et l'onglet s'auto-complète correctement (veuillez inclure le/à la fin)
tu peux essayer ça
/cygdrive/c/directoryname
Créez un fichier nommé "overrideBashCdForWindowsPaths" dans votre dossier HOME. Collez les lignes suivantes dans ce fichier et enregistrez-le:
#!/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")"
}
Ensuite, tapez la commande suivante dans un terminal, alors que vous êtes dans votre dossier HOME:
echo ". overrideBashCdForWindowsPaths" >> .bashrc
Fermez votre terminal et ouvrez-en un nouveau. Vous pouvez maintenant facilement changer de dossier Windows en tapant simplement
cd C:\Python31\sip
Le script lit la dernière commande, extrait le chemin et le transmet à l'outil de conversion de chemin de Cygwin. En nommant la fonction "cd", nous "remplaçons" le "cd" de Bash et en déléguons l'appel dans la dernière ligne.
Il est intéressant de noter ici que cygpath
de Cygwin ne gère toujours pas correctement les chemins Windows espacés, en particulier dans les scripts Bash exécutés sous Cygwin. L'astuce consiste à comprendre comment Cygwin
interprète les guillemets dans les scripts Bash.
Ce qui suit not fonctionne:
#!/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
Mais cela fonctionne:
#!/bin/bash
# Cygwin-ism: No quotes!
TBDIR=/cygdrive/c/Program\ Files\ \(x86\)/MyDir/
if [ -d "${TBDIR}" ]; then
...
Pour autant que je sache, il n'existe actuellement aucune solution de contournement connue utilisant cygpath
, qui puisse gérer correctement les espaces dans le contexte de script bash, mais vous pouvez utiliser des guillemets dans vos scripts.
$cd C:\
>
(Appuyez sur Entrée lorsque vous voyez cette ligne)
Vous êtes maintenant dans le lecteur C.
Celui que j'aime bien est: cd C:
Pour que Linux se sente alors faire:
ln -s /cygdrive/c/folder ~/folder
et utiliser ceci comme: ~/folder/..