\fBupscmd\fR allows you to invoke "instant commands" in your UPS hardware\&. Not all hardware supports this, so check the list with \-l to see if anything will work on your equipment\&.
.sp
On hardware that supports it, you can use this program to start and stop battery tests, invoke a front panel test (beep!), turn the load on or off, and more\&.
.SH"OPTIONS"
.PP
\fB\-h\fR
.RS4
Display the help message\&.
.RE
.PP
\fB\-l\fR\fIups\fR
.RS4
Show the list of supported instant commands on that UPS\&. Some hardware may not support any of them\&.
.RE
.PP
\fB\-u\fR\fIusername\fR
.RS4
Set the username for the connection to the server\&. This is optional, and you will be prompted for this when invoking a command if \-u is not used\&.
.RE
.PP
\fB\-p\fR\fIpassword\fR
.RS4
Set the password to authenticate to the server\&. This is also optional like \-u, and you will be prompted for it if necessary\&.
Wait for the completion of command execution by the driver and return its actual result from the device\&. Note that this feature requires that both upsd and the driver support TRACKING (NUT version 2\&.8\&.0 or higher) or it will otherwise fail\&. The command will also block until an actual result is provided from the driver, or the timeout is reached (see
upsname[@hostname[:port]]\&. The default hostname is "localhost"\&.
.RE
.SH"UNATTENDED MODE"
.sp
If you run this program inside a shell script or similar to invoke a command, you will need to specify all of the information on the command line\&. This means using \-u and \-p\&. Otherwise it will put up a prompt and your program will hang\&.
.sp
This is not necessary when displaying the list, as the username and password are not required for read\-only mode\&.
Some drivers like \fBapcsmart\fR(8) have built\-in paranoia for the dangerous commands like load\&.off\&. To make them actually turn off the load, you will have to send the command twice within a short window\&. That is, you will have to send it once, then send it again after 3 seconds elapse but before 15 seconds pass\&.
.sp
This paranoia is entirely defined within the driver\&. upsd and upscmd have no control over the timing\&.
.SH"DIAGNOSTICS"
.sp
upscmd won\(cqt work unless you provide a valid username and password\&. If you get "access denied" errors, make sure that your \fBupsd.users\fR(5) has an entry for you, and that the username you are using has permissions to SET variables\&.