Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/rust/4.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Bash的$变量未展开_Bash - Fatal编程技术网

Bash的$变量未展开

Bash的$变量未展开,bash,Bash,$变量应该用Bash中最后执行的命令的参数展开,它包含前面的_lp_runtime_。无论我运行一个命令多少次,这都是它的内容。为什么? 实际上,根据bash的手册页,$扩展到最后一个命令行的最后一个参数: [$\]展开到展开后上一个命令的最后一个参数 如果您想要完整的参数,!:*: 我添加了一个将stdout重定向到null设备的重定向,以防止bash打印扩展。向我们展示整个脚本,告诉我们您是如何使用它的,我们需要一个最小的可复制示例来重新创建您的问题请注意,$是一个交互式功能-不保证在脚本中

$变量应该用Bash中最后执行的命令的参数展开,它包含前面的_lp_runtime_。无论我运行一个命令多少次,这都是它的内容。为什么?

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

[$\]展开到展开后上一个命令的最后一个参数

如果您想要完整的参数,!:*:


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

向我们展示整个脚本,告诉我们您是如何使用它的,我们需要一个最小的可复制示例来重新创建您的问题请注意,$是一个交互式功能-不保证在脚本中可用-而且,许多shell内置变量被定义为在任何显式分配给它们的情况下都会丢失它们的特殊行为。因此,这更像是一个问题。$\uu是一个在交互和非交互shell中行为相同的变量。@NicoRodsevich并稍微修改了它:历史扩展在这里通常是离题的:因此,它仅适用于有关编写软件的问题,并且历史扩展仅在交互式shell中默认启用,而不是在那些执行脚本的shell中启用。@CharlesDuffy,TIL关于扩展启用和执行脚本。
$ ls -a -l -h test
[blah blah]
$ last_command="!:*" > /dev/null

$ echo $last_command
-a -l -h test