在 tcsh shell 下,如何将脚本的输出发送到 shell 和 gdb 上的程序?

Under tcsh shell, how to send the output of the script to a program either on shell and on gdb?

我正在远程计算机上工作。 shell 是没有 root 权限的 tcsh。我无法控制服务器。

我有一个脚本script.pl。当运行时:

perl script.pl

给出正确的结果

但是当我尝试将此输出发送到某个程序时出现错误 "Illegal variable name."

./vuln $(perl script.pl)
Illegal variable name.

当我在 gdb 上工作时,当然会重复错误

(gdb) r $(perl script.pl)
Starting program: /vuln $(perl script.pl)
Illegal variable name.

如何将脚本的输出发送到 shell 和 gdb 上的程序?

tcsh 不理解这种替换语法 $(...) 您需要为可移植 shell 脚本使用反引号:

./vuln `perl script.pl`