我甚至不知道什么是infile> outfile意味着。我该怎么用?

时间:2011-08-27 07:37:13

标签: python shell command-line file-io

我不知道如何使用Python,我正在尝试在文档上使用脚本。我不知道如何告诉它这样做!

如果我只是运行脚本,这就是我收到的消息:

Use: C:\Python27\hun2html.py infile > outfile

Traceback (most recent call last):
  File "C:\Python27\hun2html.py", line 75, in <module>
    sys.exit(1)
SystemExit: 1

我不确定哪些信息与知道这些内容的人有关,但这是代码中最相关的部分,我相信:

if __name__ == '__main__':
    import sys
    if not sys.argv[1:]:
        print "Use: %s infile > outfile" % sys.argv[0]
        sys.exit(1)
    contents = open(sys.argv[1]).read()
    print hun2html(contents)

应该更改文档中的格式。如果有人能理解这个愚蠢的问题,我真的很感激一些帮助!

3 个答案:

答案 0 :(得分:1)

这意味着您应该编写要用于infile的输入的文件的路径以及要在outfile中存储输出的文件的路径。例如,

C:\Python27\hun2html.py C:\input.txt > C:\output.txt

请注意,输入文件作为参数传递(在代码中由sys.argv[1]访问)并且输出是通过管道输入的,这意味着Python将其打印到标准输出,但是因为你放了{{ 1}}字符它将被重定向到您指定的文件。如果您离开>,您会看到终端上显示的输出。

答案 1 :(得分:0)

您将输入文件作为第一个参数,并将标准输出重定向到要写入结果的文件。例如:

C:\Python27\hun2html.py myfile.hun >myfile.html

>符号告诉它,打印到标准输出的任何内容都将写入文件而不是控制台。还有<将文件读取到标准输入。

答案 2 :(得分:0)

假设您有一个名为input.doc的文档。如果您运行hun2html.py input.doc,它将显示该终端的输出。

但是,由于您希望将输出放在另一个文件中,因此您必须将输出重定向到文件。这就是> outfile发挥作用的地方。如果要将输出保存在output.html中,则必须执行此操作:

hun2html.py input.doc > output.html

希望它有所帮助。