叫我小高就好了
2020-04-02 16:16
采纳率: 100%
浏览 135

想请问一下我在脚本中如何才能调取ip.txt中的值

想请问一下我在脚本中如何才能调取ip.txt中的值。我大概知道使用for语句,但具体的语句编写一直不成功。请教大家一下,我该怎么写。

[root@tst scripts]# cat ip.txt
192.8.151.72
192.8.151.73
192.8.151.74
192.8.151.75
192.8.151.76
192.8.151.77
192.8.151.78
vim /scripts/tst.sh
 #!/bin/bash
  2 
  3 /usr/local/bin/expect <<-EOF
  4 set ip[lindex $argv 0]
  5 spawn ssh -p22 root@$ip
  6 expect {
  7 "*yes/no" { send "yes\r"; exp_continue }
  8 "*password:" { send "passwd\r" }
  9 }
 10 expect "*#"
 11 send "cd /\r"
 12 expect "*#"
 13 send "chown tst.users /Tstapp\r"
 14 expect "*#"
 15 send "exit\r"
 16 expect eof
 17 EOF

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 邀请回答

1条回答 默认 最新

  • weixin_43975295 2020-04-02 17:44
    已采纳

    方法很多啊,我比较常用的一种方式是这样的:
    cat ip.txt |while read line
    do
    echo $line
    done
    这样就是把ip.txt中的每一行依次取出并以line这个变量传给while循环去跑,这个循环里你可以随意使用line这个变量。

    点赞 打赏 评论

相关推荐 更多相似问题