私は PyQt4 をインストールしようとしています。インストールガイドによると、 SIP をインストールする必要があります。 Sipをインストールする 最後のステップ は、make install
コマンドを使用することです。 Windowsはそれを持っていないので、私はそれを調べて、私が見たすべてがCygwinをインストールするように言った。だから私はしました。しかし... sipはC:\Python31\sip
にあります。
これをCygwinコマンドから実行できますか?もしそうなら、どうすればいいの?
または、通常のWindowsのコマンドプロンプトから実行できますか?もしそうなら、どうすればいいの?
つかいます:
cd /cygdrive/c
私はcygwinで私を大いに助けてくれる何かを追加します。新しいシステムをセットアップするときはいつでも、私はいつもこれをします
ln -s /cygdrive/c /c
これにより、(ホームディレクトリ内に)/cygdrive/c
という新しいファイルで/c
への シンボリックリンク が作成されます。
その後、あなたのシェルでこれを行うことができます
cd /c/Foo
cd /c/
とても便利な。
cd c:
はcygwinでサポートされました
あなたはすでに答えを受け入れました、しかし私はちょうど私が以下がCygwinでもうまくいくと言及したいと思いました:
cd "C:\Foo"
私はcd /cygdrive/c
メソッドがより良いと思いますが、時にはこれができることを知っておくと便利です。
おそらくこれを頻繁に行いたいので、エイリアスを.bashrcファイルに追加してください。
alias cdc='cd /cygdrive/c'
alias cdp='cd /cygdrive/p'
それからあなたはただコマンドラインでタイプすることができます:
cdc
そのまま使えます
cd C:/Users/../..
関連するメモでは、あなたも好きかもしれません:
shopt -s autocd
これはあなたがただディレクトリにタイプすることによってあなたがディレクトリをcdすることを可能にします
[user@Host ~]$ /cygdrive/d
cd /cygdrive/d
[user@Host /cygdrive/d]$
永続的にするには、~/.bashrc
に追加する必要があります。
.bashrcに変数を定義します。
export C=/cygdrive/c
それからあなたは使うことができます
cd $C/
タブは正しく自動補完されます(最後に/を付けてください)。
あなたはこれを試すことができます
/cygdrive/c/directoryname
HOMEフォルダに "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")"
}
次に、HOMEフォルダにいる間に、端末に次のコマンドを入力します。
echo ". overrideBashCdForWindowsPaths" >> .bashrc
端末を閉じて新しい端末を開きます。入力するだけで、簡単にそのWindowsフォルダに移動できます。
cd C:\Python31\sip
スクリプトは最後のコマンドを読み込み、パスを抽出してCygwinのパス変換ツールに渡します。関数 "cd"に名前を付けることによって、Bashの組み込み関数 "cd"を 'オーバーライド'し、最後の行で実際の呼び出しを委任します。
ここで言及する価値があるのは、Cygwinのcygpath
は、特にCygwinの下で実行されているBashスクリプトでは、まだ間隔のあいたWindowsパスを正しく処理しないことです。トリックは、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
...
私の知る限りでは、bashスクリプトのコンテキストでスペースを適切に処理できるcygpath
を使用した既知の回避策は現在ありませんが、スクリプト内で引用符を使用できます。
$cd C:\
>
(この行が表示されたらEnterキーを押します)
あなたは今Cドライブにいます。
私が好きなものは:cd C:
Linuxを感じさせるには、次のようにします。
ln -s /cygdrive/c/folder ~/folder
~/folder/..
のようにこれを使います。