如果这是重复的,我很抱歉,我找不到这个问题的任何其他例子。
我正在尝试写一个用于自然语言识别的程序,我读了一篇博客文章,其中有人试图做类似的事情,它建议使用这两行来捕获输出。
#capture output of script
./get-language.py | tee preptxt我不知道这段代码要做什么。我假设它正在运行get语言文件,但是在我看来语法不正确。有人能给我指个方向吗?
发布于 2015-12-04 03:52:08
在Unix系统上,您可以使用/path/to/my/executable运行可执行文件。这不是特定于python的。由于.是当前工作目录,因此您将执行位于当前目录中的get-language.py脚本。
但是,要让脚本正常工作,您需要做两件事:
1.添加shebang
这是脚本的第一行,它告诉shell要使用哪个程序。要使用PATH中的第一个python解释器,请使用:
#!/usr/bin/env python2.添加权限以使您的脚本可执行:
你需要允许执行你的脚本。这可以使用chmod来完成
chmod +x myscript.py最后一部分是所谓的管道操作。如果你像这样调用两个程序:
$ program_a | program_bprogram_a的输出(stdout)被馈送到program_b。
发布于 2015-12-04 03:47:31
这是一个shell的东西,不是Python。.是当前目录;您将从那里运行get-language.py。
发布于 2015-12-04 03:48:14
这不是一行python,而是一个shell脚本。
它正在运行一个名为get-language.py的脚本(我假设在该博客的其他地方对它进行了描述,并执行实际的语言处理),然后它通过unix命令行程序tee“管道”输出,该程序将输出存储在一个文件中。
管道获取一个程序的输出,并将其用作另一个程序的输入。
https://stackoverflow.com/questions/34074822
复制相似问题