Bash的$ _变量未扩展

时间:2019-10-24 12:44:38

标签: bash

$_变量(应使用Bash中最后执行的命令的参数扩展)包含_lp_runtime_before。无论我运行命令多少次,它都将是它的内容。为什么?

1 个答案:

答案 0 :(得分:1)

实际上,根据bash的手册页,$ _扩展到最后一个命令行的最后一个参数

  

[$ _]扩展后将扩展为上一个命令的最后一个参数。

如果您需要整个参数,请use !:*

$ ls -a -l -h test
[blah blah]
$ last_command="!:*" > /dev/null

$ echo $last_command
-a -l -h test

我添加了stdout到空设备的重定向,以防止bash打印扩展。