Добрый день!
Я скачал с инета скрипт-командную оболочку для JMX и хочу чтобы запускались команды не только в самой оболочки, а через специальный входной текстовый командный файл. Мне надо доработать этот командную оболочку, а я не знаю как.
Вот фрагмент кода, который берет текстовый командный файл в виде аргумента:
if __name__ == ‘__main__’:
if len(sys.argv) > 1:
try:
input = open(sys.argv, ‘rt’)
sys.stdin = input
jmxCmd(input).cmdloop()
finally:
input.close()
else:
jmxCmd().cmdloop()
Ошибка которую я получаю:
oracle@vmalkhimovopt/oracle/product/weblogic/10.3.6/user_projects/domains/scripts> jython/jython JythonJMXClient.py commands.txt
warning: /home/oracle/.jython is a directory, not a file
Traceback (most recent call last):
File “JythonJMXClient.py”, line 100, in <module>
jmxCmd(input).cmdloop()
File “/opt/oracle/product/weblogic/10.3.6/user_projects/domains/scripts/jython/Lib/cmd.py”, line 115, in cmdloop
readline.parse_and_bind(self.completekey + “: complete”)
File “/opt/oracle/product/weblogic/10.3.6/user_projects/domains/scripts/jython/Lib/cmd.py”, line 115, in cmdloop
readline.parse_and_bind(self.completekey + “: complete”)
TypeError: unsupported operand type(s) for +: ‘file’ and ‘str’
Посмотрите пожалуйста.
Полностью скрипт во вложении.