タイトルごとに、cmderプロンプトで等号のエイリアスを作成しようとすると、 =
付属しているものが切り捨てられ、 user-aliases.cmd
ファイルに正しく保存されません。
例:
λ alias wifi=netsh wlan show profile $1 key=clear
次のように保存されます:
wifi=netsh wlan show profile $1 ke
$reasons
cmderはy=clear
を評価に値する$something
として読み取るため、実際のエイリアス保存プロセスから切り離されていると思います。 ファイルを手動で編集すると、この問題をすばやく解決できます。
増え続けるEffinのマニュアルで、正確に読んでいないものを露骨に見逃していますか? 😛
doskeyコマンド(エイリアスがラップする)が例を処理しているように見えるため、これはalias.batスクリプトのバグである可能性があります。
alias.batを変更し、最初の行を<strong i="6">@echo</strong> on
変更することで、デバッグできます。 ここで見てみると、スクリプトが「=」を区切り文字として使用してエイリアス文字列を分割し、文字列に=が1つだけあると想定している点があることがわかります。
修正方法は次のとおりです。alias.batで、「:: validate alias」という行を見つけ、次の行で「2」を「*」に置き換えます。
for / f "delims == tokens = 1、* usebackq" %% G in( echo "%_x%"
)do(
これはあなたの例で私のために働くようです。
手元にある問題を詳しく説明していただきありがとうございます。私はCMDの初心者なので、非常に役立ちます。 :)
私はあなたの修正が問題を修正したことを確認できます、ありがとう! PRをするべきですか?
修正を加えてプルリクエストを作成できます。 それがあなたのために働くことを確認してくれてありがとう。
最も参考になるコメント
doskeyコマンド(エイリアスがラップする)が例を処理しているように見えるため、これはalias.batスクリプトのバグである可能性があります。
alias.batを変更し、最初の行を
<strong i="6">@echo</strong> on
変更することで、デバッグできます。 ここで見てみると、スクリプトが「=」を区切り文字として使用してエイリアス文字列を分割し、文字列に=が1つだけあると想定している点があることがわかります。修正方法は次のとおりです。alias.batで、「:: validate alias」という行を見つけ、次の行で「2」を「*」に置き換えます。
for / f "delims == tokens = 1、* usebackq" %% G in(
echo "%_x%"
)do(これはあなたの例で私のために働くようです。