ファイルから詳細を取得してコマンドを実行するスクリプト

ファイルから詳細を取得してコマンドを実行するスクリプト

スクリプトで2番目の列をリンクする方法を知っておくと便利です。現在、次のforループを使用しています。

for i in cat server
do     
    echo ===$i====
    ssh -q $i 'netstat -tulpun | egrep '22|13''
done  

ポートが異なる複数のサーバー。たとえば、下の最初の列にはサーバーがあり、2番目の列にはポートがあります。

Jan 113  
Feb 114  
Mar 115  
Apr 116  
May 117  

ベストアンサー1

次から始める必要があります。

#!/bin/bash

cat server | while read str 
do
  server=$(echo "$str" | cut -d' ' -f 1)
  port=$(echo "$str" | cut -d' ' -f 2)
  echo server: "$server" port: "$port"
  ssh -q "$server" 'netstat | grep -E "'"$port"'"'
done

サーバーポートペアを使用してファイルを呼び出し、次にコマンドを使用してそのserverファイルsshを拡張するとします。

cat serverこれら2つの値をforループに割り当てるだけですi。これは可能ですが、for i in $(cat server)上記の例のような行は提供されておらず、私の考えでは、行の値を分割する方が値を分割するよりも優れています。連続して(for)複数の値を組み合わせると、段落を繰り返すのが簡単になります。

おすすめ記事