web-dev-qa-db-ja.com

ファイルの内容を使用してPATH変数を設定するにはどうすればよいですか?

たとえば、WindowsでPATH変数を設定できることはわかっています。

set path="%path%;c:\directoryPath"

または、恒久的にsetxを使用して:

setx path "%path%;c:\directoryPath"

ただし、コマンドリダイレクトを使用して、ファイルからの入力を使用してこれを設定するにはどうすればよいですか?たとえば、ファイルがありますmypaths.txt完全なパス設定が含まれています:

C:\Program Files\myappA;C:\Program Files\myappB;...

私は次のようなことができるようになりたいです:

set path= < mypaths.txt

しかし、これは機能しません。では、これを正しく行う方法は?

3
Rabarberski

ファイルの内容を使用してPATH変数を設定するにはどうすればよいですか?

set /p ...またはsetx ... /f ...を使用してこれを行うことができます


set /p ...ソリューション

set /p PATH=<mypaths.txt

ノート:

  • =<の前後にスペースを入れないでください。
  • 構文set /p variable=[promptString]
  • /pスイッチを使用すると、ユーザーが入力した入力行に等しい変数を設定できます(ファイルから取得するようにリダイレクトできます)。
  • プロンプト文字列は空にすることができます。

setx ... /f ...ソリューション

setx PATH /f mypaths.txt

ノート:

  • /f FileName読み取りたいファイル。
  • /fは、プレーンテキストファイルの解析のみをサポートします(CR/LF行末付き)。

参考文献

  • Windows CMDコマンドラインのA-Zインデックス -Windowsコマンドラインに関連するすべてのものの優れたリファレンス。
  • set -CMD環境変数を表示、設定、または削除します。 SETで行われた変更は、現在のCMDセッションの間のみ保持されます。
  • setx -環境変数を永続的に設定します。SETXを使用して、マシン(HKLM)または現在ログオンしているユーザー(HKCU)の環境変数を設定できます。
3
DavidPostill