私はzshとbashから来た魚の殻を試しています。私は曖昧に、$_
位置パラメータを紛失しており、それを関数で模倣しようとしています。魚の変数を評価する方法
フィッシュのコマンド履歴は$history
の配列になります($history[1]
は履歴の前の行、$history[2]
は前のものなど)。
function \$_ --description 'Fish-patch for the $_ positional parameter'
echo $history[1] | awk '{print $NF}'
end
のような機能でそれを入れて試してみました。しかし、それはかなりのように動作しません。この変数を評価し、この
ls -al
echo $history[1] | awk '{print $NF}' // Prints -al
のような最後の単語を抽出しようとしています
期待される。 $_
を単独で呼び出すと、正常に動作します。
ls -al
$_
-al
を印刷します。しかし、$_
がパラメータとして関数に渡された場合、
ls -al
echo $_
echo
を出力します。私はそれがサブシェルまたは何かで評価されている$_
関数と関係があると考えています。私は本当に分かりません。
ここで何が間違っていますか? echo $_
が期待どおりに機能しないのはなぜですか?