問題タブ [dot-source]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
bash - source コマンドを使用せずに bash スクリプトをソースとして実行する
source
または「。」を追加する必要がないように、スクリプトを「ソースとして実行」するようにマークする方法はありますか? 毎回それにコマンド?つまり、「sup」というスクリプトを書く場合、次のように呼びたいと思います。
それよりも
また
cd
基本的に、スクリプト内で使用しようとしています。
bash - sh のソースの置き換え
環境変数を設定する必要があります。通常、これを行うには
しかし今、私はブート プロセス中にそれを自動化しており、デフォルトでsh
シェルを使用してルートがブートするように見えます。でこのスクリプトを入手するにはどうすればよいsh
ですか?
powershell - PowerShellで、ファイルに関数を定義し、PowerShellコマンドラインから呼び出すにはどうすればよいですか?
カスタム関数を定義したい.ps1ファイルがあります。
ファイルの名前がMyFunctions.ps1で、内容が次のようになっているとします。
このスクリプトを実行し、理論的にA1関数を登録するには、.ps1ファイルが存在するフォルダーに移動して、ファイルを実行します。
これは以下を出力します:
それでも、A1を呼び出そうとすると、その名前のコマンド/関数がないというエラーが表示されます。
PowerShellの概念を誤解する必要があります。スクリプトファイルで関数を定義できませんか?
実行ポリシーを「RemoteSigned」に設定していることに注意してください。そして、ファイル名の前にドットを使用して.ps1ファイルを実行することを知っています:。\ myFile.ps1
bash - bash スクリプトで .zshrc を入手する
このbashスクリプト(テスト)があるとしましょう:
私の .zshrc には、次のものがあります。
ターミナル ウィンドウ (zsh) から 'bash test' を実行しようとすると、autoload コマンドと compinit コマンドが見つからないというエラーが表示されます。コマンドラインから source ~/.zshrc を実行すると、正常に動作します。
このブログと同様に、開発環境をセットアップしようとしていますが、スクリプトが .zshrc ファイルを読み込もうとすると失敗します。
任意の洞察をいただければ幸いです。
linux - #。/と#の違い。./
次のようなスクリプトの実行の違いは何ですか
と
テストは、たとえば単純なスクリプトです
結果はわかっていますが、実際に何が起こっているのかわかりません
ありがとう
powershell - .ps1 で終わらない PowerShell スクリプトのドット ソース
PowerShell プログラムから、別の PowerShell プログラムを「ドット ソース」することができます。つまり、最初のものの中に書かれているかのように実行できます。
例:
MyOtherProgram は、メイン プログラム内に「含まれて」おり、その内容がコピー/貼り付けされた場合とまったく同じです。
.ps1
問題は: I can't with MyOtherProgram.lib
orで終わるファイル名をドットソースすることしかできないMyOtherProgram.whatever
で終わらないPowerShellスクリプトをドットソースする方法は誰にもあり.ps1
ますか?
multithreading - ドットソースで仕事を始める
簡単な話: powershell を使った実験のために、スクリプトを効果的にマルチスレッド化する方法を学ぼうとしています。
これで、ジョブを開始して 2 番目のスクリプトに変数を渡す方法がわかりましたが、これを有効にする方法を試してみることにしました。
これに:
この理由は、次のように親スクリプトで宣言された変数があるためです。
子スクリプト:var = "something"
最初の start-job は引数を渡しますが、子はグローバル 'var' 変数を設定しません
2 番目は私の引数を渡しませんが、子スクリプトは親で定義されたグローバル変数を問題なく設定します。$argList 変数は、2 番目の開始ジョブでこのコード行まで入力されますが、行の実行直後に、デバッグによって $argList 変数が null であることが明らかになり、「Start-Job : 引数をパラメーターにバインドできません」というメッセージが表示されますScriptBlock' は null であるためです。"
議論のために、記述されたコード行まで、変数には必要なデータが含まれていると仮定します。
誰かが両方の試みの何が問題なのか私を助けてくれますか? Google は、私の問題に対する具体的な回答を提供してくれませんでした。私が得ることができる助けを前もって感謝します。
編集:使用Start-Job (. ((Split-Path -parent $PSCommandPath) + "\someScript.ps1") $argList)
すると目標が達成Start-Job : Cannot bind argument to parameter 'ScriptBlock' because it is null.
されますが、引数がスクリプト ブロックにあり、子スクリプトが引数を取得して処理しているにもかかわらず、取得し続けます。
linux - ソース、zsh、「.」の違い 直接シェルスクリプトを呼び出す
以下に示すように、非常に単純なスクリプト(for_loop4.sh)があります。
シェルに zsh 5.0.7 を使用しています。
ソース、zsh、および. コマンド、期待どおりに動作します。しかし、このスクリプトを直接呼び出すと、「Bad for loop variable」というメッセージで失敗します。
なぜこれが起こるのですか?違いは何ですか?
linux - 「. ./filename」コマンドはどのように機能しますか
私は openvpn のチュートリアルに従っていましたが、コマンドを実行する必要がありました. ./vars
。メッセージを表示します。ファイルを読むと、ファイル内のエコーコマンドが実行され、ファイル内の他のすべてが無視されることがわかりました。他の echo ステートメントを追加すると、それも実行されます。ですから、これについての基本的な説明をお願いします。これはbashのみに関連するものですか?