スクリプトは内部でsshを試してからユーザーを切り替えて複数のコマンドを実行しようとします。
この問題を解決するのに役立ちますか?
例は次のとおりです。
ssh $a@$e << EOF
sudo su hbase << EOF
echo "list '"$tID":.*' " | /ignio/hbase/bin/hbase shell &> ListOutput
cat ListOutput | grep "^"${tID}":" >ListOfTable
while read line; do
echo $line
tableName=`echo $line | cut -d':' -f2`
/hbase/bin/hbase org.apache.hadoop.hbase.mapreduce.Driver import $tID:$tablename hdfs:///backup/${tID}
EOF
EOF
よろしくお願いします!
ベストアンサー1
パスワードのないsudoが構成されているとします。
ssh user@host 'sudo -u sh -c hbase "command1;command2;command3"'
すべてのリモートコマンドをスクリプトに入れて、次のコマンドを実行することをお勧めします。
ssh user@host 'sudo -u hbase /some/script'