如何在bash脚本中的SSH内部执行多行代码

Chourasia的头发

我想执行以下代码,但是在vi中用红色突出显示代码中的错误。收到错误后须藤的ssh -t根@ $ IP << EOF线。哪里有我错脚本?

#!/bin/bash
cassandra_home=$(python -c "import json; print \",\".join(json.load(open('${repair.json}','r'))[\"cassandra_home\"])")
iplist[@]=$(python -c "import json; print \",\".join(json.load(open('${repair.json}','r'))[\"iplist\"])")
for ip in ${iplist[@]}
do
  sudo ssh -t root@$ip << EOF
    for ip in ${iplist[@]} 
    do
      echo Checking $ip for ongoing repairs
      ${cassandra_home}nodetool -h $ip tpstats | grep Repair#
      response=$?
      if [ $response -eq 0 ]; then
        repair_ongoing=true
        echo "Ongoing repair on $ip"
      fi
    done 
    if ! [ $repair_ongoing ]; then
      ## echo "Taking a snapshot."
      ## ${cassandra_home}bin/nodetool -h $ip snapshot
      echo "Starting repair on $ip"
      start=$(date +%s)
      ${cassandra_home}bin/nodetool -h $ip repair -pr -inc -local metadata
      sleep 3
      ${cassandra_home}bin/nodetool -h $ip cleanup metadata 
      end=$(date +%s)
      #echo "ks.tab,st,et,last run,status">>repair_status.csv
      echo "Repair and cleanup completed for metadata in $((end - start)) seconds"
    fi
    exit 0
  EOF
done           
用户名

使用https://www.shellcheck.net/(有一个vim插件),它将告诉您

Line 18:
  EOF
 ^-- SC1039: Remove indentation before end token (or use <<- and indent with tabs).

然后继续列出许多其他问题。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在Bash脚本中读取多行输入?

来自分类Dev

如何在Bash脚本中读取多行输入?

来自分类Dev

如何在bash脚本中执行自定义命令

来自分类Dev

如何在Linux中从PowerShell Core执行Bash脚本

来自分类Dev

如何在awk或bash脚本中执行(./myscript)?

来自分类Dev

如何在bash脚本中执行命令?

来自分类Dev

如何在python脚本中执行bash命令

来自分类Dev

如何在bash脚本中执行以下命令?

来自分类Dev

如何在bash脚本中循环执行Shell命令?

来自分类Dev

如何在bash的父子行为中执行脚本?

来自分类Dev

bash +如何在过程中执行ssh测试

来自分类Dev

Bash:在脚本中检测执行与源代码?

来自分类Dev

如何在SQL中执行多行计算

来自分类Dev

我们如何在python中运行bash脚本时捕获bash脚本的退出代码

来自分类Dev

从Java代码内部执行时,如何访问Shell脚本输出?

来自分类Dev

如何在Bash中创建多行别名?

来自分类Dev

如何在npm脚本中编写多行脚本?

来自分类Dev

如何在bash脚本中使用awk处理多行记录?

来自分类Dev

如何在bash脚本中使用awk处理多行记录?

来自分类Dev

如何在 Bash 脚本的多行语句上添加注释?

来自分类Dev

如何从bash脚本中退出ssh?

来自分类Dev

如何在C#中的函数内部捕获代码块调用的执行时间

来自分类Dev

如何在包含Write-Host命令的代码创建的Powershell Shell中执行脚本?

来自分类Dev

如何分配要由外部命令执行的代码?Bash脚本?

来自分类Dev

如何在bash脚本中执行环境变量中的程序

来自分类Dev

如何停止在BASH脚本中串联命令替换的多行输出?

来自分类Dev

在Bash脚本中执行Apache Spark(Scala)代码

来自分类Dev

如何执行bash脚本?

来自分类Dev

如何在pgAdmin中执行pgsql脚本?

Related 相关文章

  1. 1

    如何在Bash脚本中读取多行输入?

  2. 2

    如何在Bash脚本中读取多行输入?

  3. 3

    如何在bash脚本中执行自定义命令

  4. 4

    如何在Linux中从PowerShell Core执行Bash脚本

  5. 5

    如何在awk或bash脚本中执行(./myscript)?

  6. 6

    如何在bash脚本中执行命令?

  7. 7

    如何在python脚本中执行bash命令

  8. 8

    如何在bash脚本中执行以下命令?

  9. 9

    如何在bash脚本中循环执行Shell命令?

  10. 10

    如何在bash的父子行为中执行脚本?

  11. 11

    bash +如何在过程中执行ssh测试

  12. 12

    Bash:在脚本中检测执行与源代码?

  13. 13

    如何在SQL中执行多行计算

  14. 14

    我们如何在python中运行bash脚本时捕获bash脚本的退出代码

  15. 15

    从Java代码内部执行时,如何访问Shell脚本输出?

  16. 16

    如何在Bash中创建多行别名?

  17. 17

    如何在npm脚本中编写多行脚本?

  18. 18

    如何在bash脚本中使用awk处理多行记录?

  19. 19

    如何在bash脚本中使用awk处理多行记录?

  20. 20

    如何在 Bash 脚本的多行语句上添加注释?

  21. 21

    如何从bash脚本中退出ssh?

  22. 22

    如何在C#中的函数内部捕获代码块调用的执行时间

  23. 23

    如何在包含Write-Host命令的代码创建的Powershell Shell中执行脚本?

  24. 24

    如何分配要由外部命令执行的代码?Bash脚本?

  25. 25

    如何在bash脚本中执行环境变量中的程序

  26. 26

    如何停止在BASH脚本中串联命令替换的多行输出?

  27. 27

    在Bash脚本中执行Apache Spark(Scala)代码

  28. 28

    如何执行bash脚本?

  29. 29

    如何在pgAdmin中执行pgsql脚本?

热门标签

归档