我正在编写一个脚本,要求您在完成输入时按EXPLAIN (ANALYZE, BUFFERS)
。我想发送这个命令,这样我就可以编写我的工作脚本而不必重做我的工作。
答案 0 :(得分:1)
你可能正在谈论传输结束"分隔符,用于指示用户输入的结束。如果是这种情况,那么您始终可以将数据传输到脚本中。也就是说,而不是:
$ test_script.sh
My input!
^D
您将该数据写入文件:
$ cat > input
My input!
^D
然后将其输入脚本:
$ test_script.sh < input
不需要^D
,因为一旦完全读取该文件,脚本就会相应地发出信号。 <
shell运算符将STDIN切换为从文件而不是终端读取。同样,>
可用于捕获程序的输出并将其保存到文件中,如此处的第二步所做,尽管您可以使用任何您想要创建或编辑该输入的工具文件。
这适用于几乎任何脚本语言,从Python,Perl,Ruby到Node.js以及bash和其他shell。