wmi-1.3.16 from opsview.com
This commit is contained in:
Executable
+96
@@ -0,0 +1,96 @@
|
||||
#!/bin/sh
|
||||
exec smbscript "$0" ${1+"$@"}
|
||||
/*
|
||||
provide information on connected users and open files
|
||||
Copyright Andrew Tridgell 2005
|
||||
Released under the GNU GPL v2 or later
|
||||
*/
|
||||
|
||||
libinclude("base.js");
|
||||
libinclude("management.js");
|
||||
|
||||
var options = new Object();
|
||||
|
||||
options = GetOptions(ARGV,
|
||||
"POPT_AUTOHELP",
|
||||
"POPT_COMMON_SAMBA",
|
||||
"POPT_COMMON_VERSION",
|
||||
"nbt");
|
||||
if (options == undefined) {
|
||||
println("Failed to parse options: " + options.ERROR);
|
||||
return -1;
|
||||
}
|
||||
|
||||
/*
|
||||
show open sessions
|
||||
*/
|
||||
function show_sessions()
|
||||
{
|
||||
var sessions = smbsrv_sessions();
|
||||
var i;
|
||||
var sys = sys_init();
|
||||
if (sessions == undefined) {
|
||||
println("No sessions open");
|
||||
return;
|
||||
}
|
||||
printf("User Client Connected at\n");
|
||||
printf("-------------------------------------------------------------------------------\n");
|
||||
for (i=0;i<sessions.length;i++) {
|
||||
var info = sessions[i];
|
||||
var fulluser = sprintf("%s/%s", info.account_name, info.domain_name);
|
||||
printf("%-30s %16s %s\n",
|
||||
fulluser, info.client_ip, sys.httptime(info.connect_time));
|
||||
}
|
||||
printf("\n");
|
||||
}
|
||||
|
||||
/*
|
||||
show open tree connects
|
||||
*/
|
||||
function show_tcons()
|
||||
{
|
||||
var tcons = smbsrv_tcons();
|
||||
var sys = sys_init();
|
||||
if (tcons == undefined) {
|
||||
println("No tree connects");
|
||||
return;
|
||||
}
|
||||
printf("Share Client Connected at\n");
|
||||
printf("-------------------------------------------------------------------------------\n");
|
||||
for (i=0;i<tcons.length;i++) {
|
||||
var info = tcons[i];
|
||||
printf("%-30s %16s %s\n",
|
||||
info.share_name, info.client_ip, sys.httptime(info.connect_time));
|
||||
}
|
||||
}
|
||||
|
||||
/*
|
||||
show nbtd information
|
||||
*/
|
||||
function show_nbt()
|
||||
{
|
||||
var stats = nbtd_statistics();
|
||||
if (stats == undefined) {
|
||||
println("nbt server not running");
|
||||
return;
|
||||
}
|
||||
var r;
|
||||
println("NBT server statistics:");
|
||||
for (r in stats) {
|
||||
print("\t" + r + ":\t" + stats[r] + "\n");
|
||||
}
|
||||
println("");
|
||||
}
|
||||
|
||||
var lp = loadparm_init();
|
||||
|
||||
printf("%s\n\n", lp.get("server string"));
|
||||
|
||||
if (options['nbt'] != undefined) {
|
||||
show_nbt();
|
||||
} else {
|
||||
show_sessions();
|
||||
show_tcons();
|
||||
}
|
||||
|
||||
return 0;
|
||||
Reference in New Issue
Block a user