答え1
これをスクリプトで実行することもできます ( gnome-terminal
IPv4 で作業していることを前提としています)。以下では、ping された各 IP アドレスに対してターミナル ウィンドウを開き、調整可能なピクセル数だけそれらのウィンドウをずらします。各 Gnome ターミナル ウィンドウは、ping された IP を含むタイトルで識別されます。
たとえば、スクリプトを作成したらmy_ping.sh
、次のように実行可能にしてください。
$ chmod a+x my_ping.sh # see manual page for `chmod' if needed.
バージョンA
$ cat my_ping.sh
#!/usr/bin/bash
ip_array=(8.8.8.8
8.8.4.4
192.168.1.1) # define array with as many IPs as needed
x0=50; y0=50 # top left corner pixel coordinates of 1st term-window to open
pix_offset=50 # pixel xy-offset for subsequently staggered PING windows
for ip in "${ip_array[@]}"; do
sizeloc="80X24+$x0+$y0"
gnome-terminal --window \
--geometry="$sizeloc" \
--title "PING $ip" \
-- \ping "$ip"
x0=$((x0+pix_offset));y0=$((y0+pix_offset))
done
使用法:$ my_ping.sh
バージョンB
スクリプトへの引数として、ping する IP アドレスのリストを提供することもできますmy_ping.sh
。
$ cat my_ping.sh
#!/usr/bin/bash
x0=50; y0=50
pix_offset=50
# Include IP type-checking here if needed
for ip in "$@"; do
sizeloc="80X24+$x0+$y0"
gnome-terminal --window \
--geometry="$sizeloc" \
--title "PING $ip" \
-- \ping "$ip"
x0=$((x0+pix_offset)); y0=$((y0+pix_offset))
done
使用法:$ my_ping.sh 8.8.8.8 8.8.4.4 192.168.1.1 [...]
理想的には、少なくとも「バージョン B」では、スクリプトによって IP アドレスが型チェックされていることを確認する必要があります。for
ループの前のスクリプトでこれを実行します。HTH。