我试着从zsh和bash来的鱼壳。我非常想念$_
位置参数,并试图用函数来模仿它。如何评估鱼的变量
鱼在$history
数组中包含其命令历史记录,其中$history[1]
是历史上的前一行,$history[2]
是之前的那一行,依此类推。
我试图评估该变量并提取这样
ls -al
echo $history[1] | awk '{print $NF}' // Prints -al
我试图把它放在这样的函数
function \$_ --description 'Fish-patch for the $_ positional parameter'
echo $history[1] | awk '{print $NF}'
end
的最后一个字,但它不是做得比较作为工作预期。调用$_
本身按预期工作;
ls -al
$_
它打印-al
。但是,如果$_
作为参数传递给函数;
ls -al
echo $_
它打印echo
。我怀疑它与$_
-函数在子shell或其他东西中被评估有关,我真的不知道。
这里有什么问题?为什么echo $_
不按预期工作?