Login to karaf console via bash script

937 views Asked by At

What I'm trying to do is to login to karaf console via bash script and execute there some commands. I'm trying to do it like this:

#!/bin/bash
cmd='sudo ssh -p 8101 openhab@localhost'
eval $cmd
cmd='echo "password" && echo log:clear && echo logout'
eval $cmd

How can you suspect, it doesn't work and it's freezing at "Password: ", waiting for user to type. Then, when I type the password, karaf is opening and when I close it, the rest of script is executing. Is there a way to type a password automaticly and execute commands inside?

1

There are 1 answers

0
Alexander Komarov On

You should try apache karaf client. See the example below.

 echo "log:clear" | /opt/apache-karaf-4.2.8/bin/client

Output

    __ __                  ____      
   / //_/____ __________ _/ __/      
  / ,<  / __ `/ ___/ __ `/ /_        
 / /| |/ /_/ / /  / /_/ / __/        
/_/ |_|\__,_/_/   \__,_/_/         

Apache Karaf (4.2.8)

Hit '' for a list of available commands and '[cmd] --help' for help on a specific command. Hit 'system:shutdown' to shutdown Karaf. Hit '' or type 'logout' to disconnect shell from current session.

karaf@root()> log:clear

karaf@root()>