Powershell スクリプトを使用してテキスト ファイルに書き込みます。クライアントは、以前使用していた Excel マクロを置き換えるために使用するこの Powershell スクリプトを見せてくれました...
$computers= gc "C:\Users\Powershell\DeviceList.txt"
foreach ($computername in $computers)
{
write-output "<$computername>
active = yes
group =
interval = 5min
name = $computername
host = $computername
community =
version = 1
timeout = 0
retries = default
port = 161
qos_source = 1
</$computername>" | Out-File -filepath "C:\Users\Powershell\Cisco_Mon.txt" -append
}
それはうまく機能しますが、追加の変数を追加するためにそれを構築したいと思いました。完璧な世界では、データの各行と変数として定義されている各列を取得する Excel スプレッドシートから読み取りたいと思います。今のところ、別のテキスト ファイルを使用しても問題ありません。これが私が始めたものです(うまくいきません)が、私がどこに向かっているのかを見ることができます...
$computers= gc "C:\Users\Powershell\devicelist.txt"
$groups= gc "C:\Users\Powershell\grouplist.txt"
foreach ($computername in $computers) + ($groupname in $groups)
{
write-output "<$computername>
active = yes
group = $groupname
interval = 5min
name = $computername
host = $computername
community =
version = 1
timeout = 0
retries = default
port = 161
qos_source = 1
</$computername>" | Out-File -filepath "C:\Users\Powershell\Cisco_Mon.txt" -append
}
もちろん、それは機能していません。上記の各オプションを、$community、$interval、$active などの Excel スプレッドシートの変数に定義できれば、基本的には大好きです。
これに関するヘルプは非常に高く評価されます。誰かが Excel スプレッドシートの使用方法を教えてくれ、各列を変数として定義し、上記のテキストを変数で書き込めたら、それは素晴らしいことです!!!.
ありがとう、
smt1228@gmail.com
これの例は次のようになります...
Excel データ: (「|」で区切られた列
IP | String | Group
10.1.2.3 | Public | Payless
望ましい出力:
<10.1.2.3>
active = yes
group = Payless
interval = 5min
name = 10.1.2.3
host = 10.1.2.3
community =
version = 1
timeout = 0
retries = default
port = 161
qos_source = 1
</10.1.2.3>
添加:
IP、文字列、グループのCSVからデータを取得しています.CSVではデータは次のとおりです...
10.1.2.3,public,group1
10.2.2.3,default,group2
10.3.2.3,public,group3
10.4.2.3,default,group4
として.txtファイルに書き込まれます
IP = 10.1.2.3.
String = public
Group = Group1
CSVの各行を探します