如何在单行程序中获取别名后立即执行别名?

如何在单行程序中获取别名后立即执行别名?

我正在尝试编写一个获取别名的单行程序,然后调用这些新获取的别名之一。我的一个班轮基本上是:

alias startEnv sourceAliasFile;runNewAlias

由于我使用的是 csh,因此无法创建函数。当我运行此命令时,我的源代码会执行,但我的新别名尚不存在并且不会执行。为什么这不起作用?有没有办法解决它?

答案1

它不起作用,因为别名定义和使用都在一行上。您可以通过将别名定义写入临时文件并获取该文件来解决此问题。但除此之外 — 您需要将语句放在单独的行上(在这种情况下,分号不计入解析器)。

相关内容