1

自分で答えを見つけるために検索する方法がよくわからないCygwinの質問の簡単なカップル:

質問:走るとき

which perl

私のcygwinのインストールでは、プレインストールされたWindowsのインストールを指していません。cygwinのインストールを指しています。Windowsベースのperlインストールを指すように変更するにはどうすればよいですか:

/cygdrive/c/perl/bin/perl

質問: cygwin を起動するデスクトップ ショートカットを見ると、bash を指しています。

c:\cygwin\bin\bash --login -i

許可されているコマンドライン フラグのドキュメントが見つかりません。具体的には、事前定義されたユーザー コマンドを渡すことができるフラグを見つけて、cygwin の起動時にそのコマンドを入力しなくても自動的に呼び出されるようにしたいと考えています。

これは定期的にカスタマイズしたいものなので、.bash_profile などに入れるのは効率的ではありません。できればコマンドラインから指定できるようにしたいです。

4

1 に答える 1

2

最初のポイントへの答えは、ネイティブの win32 perl がパス内の cygwin perl の前に表示されるようにすることです。

2 番目の部分に対する答えは-c、コマンド ラインで指定されたコマンドを実行するものです。コマンド フラグは標準の bash と同じであるためman bash、bash のドキュメントでそれらのリストを取得できます。

余談ですが、ネイティブの win32 アプリケーションと cygwin を組み合わせて使用​​する場合は、UnxUtils を参照してください。これは、プログラムが標準の Windows パス (たとえば、/cygdrive のようなパスを必要とする代わりに) で適切に動作するようにするのmsvcrt.dllではなく、 に基づいています。cygwin.dllC:\foo\bar/cygdrive/c/foo/bar

Cygwin よりもはるかに包括的ではありませんが、成熟して安定しており、基本的な UNIX コマンド (sed など) の優れた断面を備えています。Windows コマンド ファイルでうまく動作し (パイプとリダイレクトを行うことができます)、ポートがあります。zshと一緒に使用すると、シェル スクリプトも実行されますが、zsh は bash と完全に互換性があるわけではありません。

于 2009-02-05T22:35:12.510 に答える