什么是Ada命令行重定向器,类似于“>”?

时间:2016-07-11 03:35:19

标签: shell output ada io-redirection

Ada noob(一般来说,命令行也不太热)。我正在寻找类似于“>”的Ada命令行重定向器在DOS中。

我在命令行shell中运行Ada应用程序。 (威廉·惠特克的话,如果有帮助的话)。我使用“@”命令让WORDS应用程序从文本文件中读取术语列表。

我希望将输出写入文件,而不是只显示在命令shell中。我确实看了http://www.ada-auth.org/standards/12rm/html/RM-A-15.html,但没有看到任何重定向*。

同样有助于了解ADA命令行重定向器是创建新文件还是我必须首先自己创建。

我是否需要使用Ada PUT命令? Ada.Text_IO?如果是这样,你能指点一下如何使用这些命令的语法资源吗?我以前从未使用过Ada。

有什么想法?谢谢你的帮助。

3 个答案:

答案 0 :(得分:1)

William Whitaker's Words包含一个交互式命令行解释器,但看起来您希望使用command-line模式从另一个程序控制它。具体细节取决于您选择的环境。作为使用bash的具体示例,而不是从始终写入@<file>的{​​{1}}读取,执行WORD.OUT后跟标准输入上的单词列表;结果显示在标准输出上:

words

从标准输出,您还可以redirect将结果发送到文件;来自$ ./words amo amas am.o V 1 1 PRES ACTIVE IND 1 S amo, amare, amavi, amatus V (1st) [XXXAO] love, like; fall in love with; be fond of; have a tendency to; am.as N 1 1 ACC P F ama, amae N (1st) F [XXXDO] lesser bucket; water bucket; (esp. fireman's bucket); am.as V 1 1 PRES ACTIVE IND 2 S amo, amare, amavi, amatus V (1st) [XXXAO] love, like; fall in love with; be fond of; have a tendency to; ,您可以使用pythoncommands;在Java中,您可以使用subprocessexec()代替example

ProcessBuilder

image

答案 1 :(得分:0)

Ada.Command_Line用于在Ada程序启动时接收命令行参数。您感兴趣的内容最有可能是Ada.Text_IOchapter A.10 in the RM)。

更具体地说,您需要声明一个变量来表示您要将标准输出重定向到的文件:

Redirection : Ada.Text_IO.File_Type;

然后创建并打开它:

Ada.Text_IO.Create (File => Redirection,
                    Name => "latin.words",
                    Mode => Ada.Text_IO.Out_File);

最后,您可以重定向标准输出:

Ada.Text_IO.Set_Output (File => Redirection);

答案 2 :(得分:0)

我没想到要先检查Github,但在William Whitaker WORDS项目网站上有一些非常好的信息,包括用户指南:

http://mk270.github.io/whitakers-words/operational.html

我从中学到的是我必须做的是: 在Windows命令行中运行Words时,输入“#”更改参数。

从这里开始: William Whitaker's WORDS beginning interface

然后输入“#”更改程序的参数和模式,然后按Enter键。您将按顺序显示每个参数,您可以输入“n”以保持当前参数设置(可以设置为是或否)或“y”以更改参数设置(是或否)。登记/> [William Whitaker改变参数的话] [2]

完成所有参数后,系统会询问您是否要保存参数更改。下图显示了这一点。 [William Whitaker的WORDS保存所有新参数设置] [3]

不要因为认为可以输入“y”或“n”作为参数设置而混淆。您输入的是关于是否更改当前参数设置的“y”或“n”。

将Write_Output_To_File参数设置为“y”后,您可以使用如下命令运行Words:

@ InputLatinWordList.txt

WORDS将生成一个名为WORD.out的文件,您可以将其打开为文本文件以重命名。