我尝试使用以下内容在heredoc块SSH会话中执行命令:
ssh -tt user@domain << 'END' > ./file.txt
some command
END
执行该命令并将一部分输出保存在file.txt中。问题是程序提示输入或空格继续显示输出(整个输出有数千行)
如何在第一个命令后发送一个或多个ENTER?我尝试使用 某些命令\ n \ n \ n ,但不起作用。
答案 0 :(得分:1)
只需在heredoc输入中添加一个空行即可。
但是命令实际上可以从终端读取,而不是标准输入。然后这不起作用。
您可能通过使用-t
开关强制进行伪终端分配来自行解决此问题。没有伪终端命令通常不会分页(没有“终端”分页),并倾向于使用标准输入进行阅读。
尝试删除-t
开关。无论如何它不应该用于自动化。这是为了互动会议。