我正在尝试将命令回显到正在运行的进程的标准输入,因此:
echo -en '<Hex Command>' | /proc/<pid>/fd/0
sudo sh -c
内但遇到了同样的错误。我做错了什么?
编辑:作为后续问题,如果我想将上述进程的 stdin 的回显输出重定向到 txt 文件(即链重定向),因为我期望终端无法读取进程的十六进制输出,怎么可能我做吗?直接添加另一个 > 不起作用。
最佳答案
管道|
运算符用于两个进程之间的通信。您需要重定向运算符 >
因为右边的操作数是一个文件。
编辑:顺便说一句,权限被拒绝错误是因为文件 /proc/<pid>/fd/0
没有可执行权限。
关于bash 权限被拒绝 : Can't echo to the stdin of a running process?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28942725/