bashのLinux(Ubuntu 11.04)では、スクリプトの実行中に通常の変数と異なるだけの環境変数を一時的に設定できますか?例えば、シェルスクリプトでHOMEを現在の作業ディレクトリのフォルダに一時的に設定してから、ポータブルに保存するアプリケーションを作成してから、アプリケーションを起動します。スクリプトの実行中にのみ環境変数を設定する方法はありますか?
答えて
はちょうどあなたが変更が発生するスクリプトのポイントで
export HOME=/blah/whatever
を置きます。各プロセスには独自の環境変数セットがあるため、この定義はスクリプトが終了すると自動的に中止されます(変更された環境を持つbashのインスタンスとともに)。
の期間_beyond_最後に設定を望んでいた場合、それは難しいだろう。 'export'は変数をサブシェルに渡しますが、親シェルを制御しません。 "#!/ bin/sh"などで始まるスクリプトを作成している場合は、スクリプトが終了するとANY変数が消えます。 – brightlancer
@brightlancer、それは本当ですが、私が書いたものと矛盾するようには見えません。 (スクリプトがバックグラウンドプロセスを開始する可能性を除いては、OPの洗練されたレベルを超えていると思うので混乱するだけです)。 –
エクスポートは不要です。また、彼のスクリプトがインタプリタ(#!/ bin/shなど)を起動する場合にのみ、あなたの答えが働きます。彼の "脚本"がなければ、あなたがちょうど彼に言ったことは、彼の脚本の終わりを超えて続くでしょう。そういうわけで、私はあなたの答えが間違っていると言っています。正しいかもしれませんが、そうではないかもしれませんが、誰かが "輸出"が彼が探していた必要な要素だと考えるようになるかもしれないので、 – brightlancer
env VAR=value myScript args ...
または 'VAR = value myScript args ... ' – Rockallite
1.' PATH = $ PATH:どうすればいいですか?XYZ echo $ PATH | grep XYZ'には出力がありませんか? 2. 'env'を使用する方法と使用しない方法の違いは何ですか? – qubodup
です。エコーコマンドを実行する前に**シェルがPATH変数**を展開するためです。その展開を遅らせる必要があります。 1つの方法: 'PATH = $ PATH:XYZ sh -c 'echo $ PATH' | grep XYZ' - ここでは一重引用符が鍵です –
VAR1=value1 VAR2=value2 myScript args ...
私は 'vblank_mode = 0 glxgears'を実行するためにこれを何度もやってきました。それは動作しますが、実行後に 'vblank_mode = 0:command not found'と表示されますが、' env'を前に付けてもこれは発生しません。 [testing ...]明らかにzshはそれを好きではない(まだそれを正しく使っている)が、bashはそれで問題ない。私は今から 'env'メソッドを使うつもりです。 –
- 1. スクリプトの実行中に仮想環境変数を設定しますか?
- 2. コマンドラインスクリプトの実行中にPHP環境変数を設定する
- 3. 実行時にJenkins環境変数を設定する方法
- 4. Dockerfileで.bash_profile環境変数を設定する方法はありますか?
- 5. 実行中のドッカーコンテナーの環境変数を設定
- 6. 環境設定でリスナーを環境設定に変更する方法は?
- 7. Upstartスクリプトのプレスタートで環境変数を設定する方法は?
- 8. 実行中プロセスのOpenMp環境変数の表示方法
- 9. Xcode構築フェーズ実行スクリプト内でグローバル環境変数を設定する
- 10. ドックでビルド中に環境変数を設定するには
- 11. 既存のドッカーコンテナに環境変数を永続的に設定する方法はありますか?
- 12. 実行中のプロセスの環境変数を変更する
- 13. 環境変数に数値を設定する方法
- 14. pythonスクリプトから環境変数を設定する
- 15. .ps1スクリプトから環境変数を設定する
- 16. 実行環境変数をSparkで設定する
- 17. antスクリプトの環境変数を設定する
- 18. スクリプトの一時環境変数を設定する
- 19. Pythonスクリプトの環境変数を設定する
- 20. 端末のGOOGLE_APPLICATION_CREDENTIALS環境変数の設定を解除/上書きする方法はありますか?
- 21. ローカル開発環境(Sublime)からリモートサーバー上の実行中のドッカーコンテナにアクセスする方法はありますか?
- 22. の設定環境変数
- 23. 環境変数の設定
- 24. DjangoのElastic Beanstalk:manage.pyシェルを実行し、環境変数にアクセスできる方法はありますか?
- 25. herokuでプロダクション環境変数を設定する方法は?
- 26. Macでカスタム環境変数を設定する方法は?
- 27. tclで環境変数を設定する方法は?
- 28. Digital Oceanで環境変数を設定する方法は?
- 29. Apache xamppで環境変数を設定する方法は?
- 30. メイクファイルレシピで環境変数を設定する方法は?ここ
あなたは誤解だスクリプト – Nemo