問題タブ [variable-expansion]

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.

0 投票する
1 に答える
100 参照

bash - 振り返りを行うためのBASHのより良い方法は?

やあみんな、bashでピリオドの前を振り返るスマートな方法があるかどうか疑問に思っています

どうにかして私の拡張でこれをすべて行うことができるように思えますか?

0 投票する
1 に答える
615 参照

powershell - 可変引数を指定して dos コマンドを実行するにはどうすればよいですか

私が実行した場合:

走る。しかし、私が試してみると:

変数が展開されていないため、失敗します。

PowerShell でこのタスクを達成する最も簡単な方法は何ですか?

0 投票する
2 に答える
320 参照

bash - 「${parameter:-word}」パラメータ展開での引用符の使用

変数が設定されていない場合にパラメータ展開の形式を使用し${parameter:-word}てデフォルト値を評価する場合、引用符のベスト プラクティスは何ですか?

たとえば、set を使用した Bash シェル スクリプトを想定して-u(未定義または未設定の変数が評価されたときにエラーを生成するため)、変数に値があるかどうかをテストするには、if [[ -z "$FOO" ]]?

また

または、他の何か?

0 投票する
1 に答える
1680 参照

bash - 1回のgetopts呼び出しを通過し、1秒で解釈されるようにbashフラグ引数を引用する方法は?

スクリプトnerfはスクリプトherdを呼び出し、スクリプトはスクリプトを呼び出しますer。 に渡す必要のある引数を明示的に受け取るnerfon フラグを使用します。herder

これは以前は問題ではありませんでした。 がコマンド ラインから呼び出されたばかりのnerfときherdは、 -p フラグの引数を単一引用符で囲むことができ、 's によって解釈されることはありませんでしherdgetoptsが、代わりにer'sによって解釈されましたgetopts

しかし、最終的に に移動する必要があるフラグで値を生成したerので、 で変数を展開する必要があります$file_contentsが、に到達するまではnerfによって解釈されないようにします。getoptser

これら 3 つのスクリプトはいずれも変更できます。

上記のマークされた行で単一引用符を使用すると、リテラル文字列 "$er_args" が渡されます。二重引用符を使用すると、フラグは によって直接解釈されherdます。二重引用符の中に一重引用符を使用すると、フラグは getopts によって解釈されません。

ここにはエレガントな解決策はないと思いますが、間違っている場合はお知らせください。私が考えることができる唯一の解決策はくだらないです:

  1. を通じてすべてerのフラグを明示的に公開しherdます。
  2. erからコールを削除し、herd直接 に配置しnerfます。
  3. ???
0 投票する
1 に答える
134 参照

tcl - 複数のステートメントで引数展開 {*} を使用する

引数の展開に tcl を使用{*}していて、この問題に遭遇しました。

ご覧のとおり、リセット変数が定義されており、 と で評価しevalてい{*}ます。

eval正常に動作している間、次の{*}ようにエラーをスローしています

次に、変数resetを次のように変更しました。

setつまり、2 番目のステートメントを削除すると、コードは正常に動作します。

{*}1 つのステートメントで正常に動作し、それ以上のステートメントでは動作しないのはなぜですか? または私はここで何が欠けていますか?

0 投票する
2 に答える
587 参照

bash - echo によるスカラー変数内の bash パラメータ展開

タイトル: スカラー変数内での bash パラメーターの展開

2 つのファイル間の差分を実行する bash スクリプトがあります。diff がある場合は、statement1 と statement2 を出力します。長いので変数に入れますが、echo ステートメントはパラメーターを展開しません。これはbashで実行できますか?

スクリプトは機能しているようです-必要なときに差分を見つけます。ただし、これは出力されるものです。

言ってもらいたい

0 投票する
1 に答える
1503 参照

arrays - zshで配列の要素を展開するには?

zshに配列があるとします

.txt各要素に追加したい

したがって、出力は

アップデート:

私はこれを行うことができると思いますが、もっと慣用的な方法があると思います:

0 投票する
2 に答える
663 参照

bash - for ループで任意の glob パターン (スペースを含む) を Bash する

変数に格納されている任意のグロビング パターンを確実に使用する方法はありますか? パターンにスペースとメタ文字の両方が含まれている場合、問題が発生します。これが私の言いたいことです。スペースなしで変数に格納されたパターンがある場合、問題なく動作するようです:

ただし、パターンにスペースを入れるとすぐに、事態は受け入れられなくなります。

明らかに、事前にパターンがわかっている場合は、手動でエスケープできます。

問題は、事前にパターンがわからないスクリプトを書いていることです。ある種のeval策略に頼らずに、bash に変数の内容をグロビング パターンとして確実に扱わせる方法はありますか?