在命令行上,我可以将输出重定向到没有 >、>> 或 | 的文件吗?运营商?

smc*_*mcg 1 io-redirection shell-script

我试图在 CentOS 虚拟机上运行命令,而我用来运行此命令的 API 似乎不允许 >、>> 或 | 运营商。此外,我必须对命令使用完全限定的路径(例如,/bin/ls 而不仅仅是 ls)。

我希望能够将某个命令的输出发送到一个文件。在这些条件下我怎么能做到这一点?理论上,我可以执行一个脚本,该脚本将在“正确的”shell 中进行重定向,但这里的选项非常不方便。

Ulr*_*gel 8

重定向由外壳程序解释。如果您使用的是 API,则执行的命令可能不会通过 shell 执行,而是直接执行(man 3 systemman 3 exec)。

要使用重定向,只需启动一个 shell 并在那里使用重定向,例如:

/bin/sh -c "command > redirect"
Run Code Online (Sandbox Code Playgroud)