什么是“|”在Jython做

时间:2014-08-12 12:50:18

标签: python bash db2 jython

class Db2profile(Cmd):
    BIN_NAME = 'db2profile'

    @staticmethod

    def handler(output):
        return output.splitlines()

def set_db2_profile(executor, instance_home):
    #cmdline = '. ' + str(shell_interpreter.normalizePath(instance_home + Db2profile.BIN_NAME))
    cmdline = 'unset LIBPATH; . ' + str(shell_interpreter.normalizePath(instance_home + 
    Db2profile.BIN_NAME)) <= #this doesn't work

    return Db2profile(cmdline) | executor

嗨伙计们,我对Python / Jython很陌生,希望有人可以帮助我。 基本上代码试图发送一些命令来执行bash(设置db2 environs)。它是HP的db2数据库uCMDB发现适配器的一部分。

return Db2profile(cmdline) | executor做什么?通常|运算符是按位OR,但根据Jython文档,按位OR是||

对字符串执行按位操作也没有意义。它是否将输出管道化为另一个功能?

1 个答案:

答案 0 :(得分:1)

|bitwise OR operator,但如果Db2profile类实现__or__ method,则可以重载。

在所有可能性Cmd实现该方法;它可以返回喜欢executor值的输入;它被称为Db2profile(cmdline).__or__(executor)