打印终端别名命令以及执行它

时间:2014-03-24 14:45:36

标签: bash terminal

作为终端菜鸟,我为我所做的一切创造了别名。问题是我开始忘记那些因为它而知道的命令。最重要的是,我有时需要在上一个命令中编辑一个变量。

所以我想要的是,当我使用别名时,打印的第一行是它所代表的实际命令,然后继续执行命令。由于按下并且!!只是重新打印别名,我不太确定如何获取对底层命令的引用。

感谢。

3 个答案:

答案 0 :(得分:9)

输入别名后,在输入之前,可以输入 Meta - Control - e (可能是 Alt - 控制 - e ,但可能 Esc - 控制 - e )扩展你输入的内容;这将扩展任何别名和历史记录扩展,以便您可以看到您输入的“长”形式。

答案 1 :(得分:6)

您可以随时使用:

  • alias列出您的所有别名,或
  • alias name显示别名name
  • 的规范

所以实际上你可以将你的别名定义为

alias myalias="alias myalias; <do stuff>"

我还认为chepner's answer Alt - Control - e 更实用,但我发布此内容是为了完整性

答案 2 :(得分:0)

您可以在别名中使用变量以获取干净的输出:

alias test='$_TMP="pushd /home/a/b/c";echo $_TMP;$_TMP'

它确实添加了_TMP环境变量。