如何将 setenv 设置为 perl 脚本的输出

How to make setenv to an output of a perl script

我写了一个 perl 脚本来打印一个非常具体的文件的路径。我想定义一个个人环境变量(通过在 .aliases 文件中使用 setenv)来提供此脚本的输出。

例如,假设文件 "myscript.pl" 打印路径“/home/files/reports/file”。让我们调用变量(我想在 .aliases 文件中定义)'myoutput'。我希望当我在 Unix 中键入 "most $myoutput" 时,该文件将被大多数人打开,而当我键入 "echo $myoutput" 时,Unix 将打印路径。

如何定义一个由脚本决定的个人变量?

myoutput=$(perl myscript.pl)

当您的脚本打印更多内容时,select 正确的行:

myoutput=$(perl myscript.pl | grep /home)

如果您使用 bash,您可以将以下内容添加到您的 .bashrc

export myoutput=$(perl /path/to/myscript.pl)

对于tcsh,使用.cshrc代替,并将该行修改为

setenv myoutput `perl /path/to/myscript.pl`

您需要启动一个新会话才能使变量存在。