適当メモ - maple4estry -


コピーアンドペースト用の記事

失われたソースファイル 3

ありがちなんだけど良くなくしてしまうスクリプトファイルなどを おいておく場所です。

端末に ping をうって在席確認する Perl - CGI スクリプト

LAN 内で指定した相手に ping をうって、在席なのか 不在なのかを確認する Perl CGI です。

情シス部門で必須の一品。ユーザの在席確認用に。 DHCP のレンタル期限にはご注意を。:-P

#!/usr/local/bin/perl

use Net::Ping;

# 名前と IPアドレスを設定します。 -->

$hosts{"おれさま"} = "127.0.0.1";
$hosts{"ほげさん"} = "127.0.0.1";
$hosts{"もげさん"} = "127.0.0.1";

# <--

&printHeader("在席状況");

print "<table>\n";
while (($name, $value) = each(%hosts)) {
	
	print "<tr>\n";
	print "<td>$name</td>\n";
	
	$p = Net::Ping->new();
	if ($p->ping($value)) {
		$zyotai = "起動中";
	} else {
		$zyotai = "未起動";
	}
	$p->close();
	
	print "<td>$zyotai</td>\n";
	print "</tr>\n";
	
}
print "</table>\n\n";

&printFooter;

exit;

sub printHeader #($title) {
	
	local($title) = @_;
	
	print "Content-type: text/html\n";
	print "\n";
	print "<html>\n\n";
	print "<head>\n\n";
	print "<meta http-equiv=\"Content-Type\" content=\"text/html; charset=Shift_JIS\">\n";
	print "<title>$title</title>\n\n";
	print "</head>\n";
	print "\n";
	print "<body>\n\n";
	print "<h1>PC起動情報</h1>\n";
	print "\n";
	
}

sub printFooter {
	
	print "</body>\n\n";
	print "</html>\n";
	print "\n";
	
}