web-dev-qa-db-ja.com

場所に関係なくコマンドラインからアクセスできるようにプログラムをインストールする方法は?

ファイルが置かれているフォルダーにいるかどうかに関係なく、Windowsのコマンドラインから実行可能ファイルを入力して実行できるようにしたい。

someProgramと入力するだけで、フォルダーの場所に関係なく実行できるように設定またはインストールするにはどうすればよいですか?

2
David Basarab

システムのプロパティを開きます([マイコンピュータ]-> [プロパティ]を右クリックします)[詳細設定]タブと[環境変数]ボタンをクリックします。 [システム変数]セクションでパスを探します。次に、そのパスにリストされているディレクトリの1つにプログラムを配置するか、インストールディレクトリをリストに追加します。後者はおそらくより良いオプションです

8
Vagnerr

そのプログラムのディレクトリへのパスをPATH環境変数に追加します。

5

これは、すべての一般的なオペレーティングシステムで、PATH変数の目的です。

Windowsにバインドされている場合は、それを広範囲に使用したい場合にそれを行うためのより良い方法があります。以前は多くのプログラム用に設定していたので、Win-Rでプログラムを開始できました(Start-など)。 >実行またはコマンドラインで)、実行可能ファイル名を数文字入力し、MRUリストを利用してアプリケーションを起動します。

これらの実行可能ファイルのすべてのパスをパスに追加することの欠点は、コマンドの実行が遅くなることです。プログラムを呼び出すたびに、すべてのパスをスキャンする必要があります。したがって、PATH変数は、「bin」または「tools」ディレクトリなど、複数の実行可能ファイルを含むディレクトリにのみ使用する必要があります。

より良い方法は、レジストリに適切なエントリを作成することです。多くのプログラムインストーラは、それを自分で行います。

HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\

行く場所です。あなたはすでにたくさんのエントリーを見るでしょう。 AFAIK、これにより、同じプログラムを開始する2つの異なるコマンドを、異なる作業ディレクトリまたは異なるプロパティで使用することもできます。

残念ながら、RunAsOnNonAdminInstallBlockOnTSNonInstallModeなど、見つけることができるパラメータに関するMicrosoft/MSDNからの情報はまだ見つかりません。私たちはそれについてのみ推測することができます。

これにより、実行可能ファイルの名前を実際に変更せずにプログラムの「名前を変更」でき(更新したり、より大きなスイートの一部である場合に問題が発生する可能性があります)、特定のお気に入りのアプリケーションに切り替えるとスムーズに移行できます。仕事。習慣/間違いから「wmplayer」と「ACDsee32」を入力すると、vlcとIrfanViewが起動しました。

[〜#〜] edit [〜#〜]参考までに、アプリケーションの登録について Microsoft doc があります。

2
lImbus

PATH環境変数を設定する必要があります。これは、コントロールパネルの[システム]アイコンの[詳細設定]タブにあります。 「環境変数」ボタンをクリックします。 2つのセクションがある2番目のダイアログが表示されます。上の方はあなたに固有の変数を示し、下の方はシステム全体に固有の変数を示しています。自分だけに影響を与えたい場合は、そこに変更を加え、それ以外の場合は一番下に置きます。

1
Avery Payne

この質問に現代的な答えを追加したいと思います(SOサイト)のロングテール哲学)。

PowerShellは、Windows上の最新のシェルです。 ChocolateyNugetはコマンドラインアプリです。キャッチフレーズは「apt-getforWindows」です。

Chocolateyが使用するパターン(他のプラットフォームのパッケージマネージャーから複製されます):

プログラムとそのすべてのEXE/DLLがC:\Program Files(x86)\MyCompany\MyAppにインストールされます。ただし、使用されるEXEは_App.EXE_の1つだけです。したがって、chocolateyはPATHに_...\MyCompany\MyApp_を追加しません。プログラムごとに1つのMyApp.batファイルを持つ1つのフォルダー_C:\chocolatey\bin_があります。各batファイルには、EXEへのフルパスを実行する1行があります。

"C:\Program Files(x86)\MyCompany\MyApp\App.EXE" %*

Chocolateyをお持ちでない場合でも、同じパターンをお勧めします。 _%USERPROFILE%\Documents\bin_フォルダーを作成し、.batファイルを作成します。 PowerShellでは、_Set-Alias_を使用してこれを行うことができます。これをデフォルトのprofile.ps1ファイルに追加します。

1
yzorg