commit - efd37145daca2646b4ed8c8d1c3eb319000c95df
commit + b52a978df9c73cb63df84630da36b042453c70c6
blob - 91052140f45e6788eee780c027ce39cee18ffc71
blob + 195d19e4a8cfe916e13bb8a6ee923a655cad9372
--- commands.c
+++ commands.c
pid_t child;
static int disable(void);
+static int clear(void);
static int doverbose(int, char**);
static int doediting(int, char**);
static int doconfig(int, char**);
static int int_doediting(char *, int, int, char **);
static int int_manual(char *, int, int, char **);
static int int_shell(char *, int, int, char **);
+static int int_clear(void);
static int int_help(void);
static int int_exit(void);
static int hostname(int, char **);
rtablehelp[] = "Routing table switch",
grouphelp[] = "Modify group attributes",
arphelp[] = "Static ARP set",
+ clearhelp[]= "Clear the terminal screen",
#ifdef notyet
parphelp[] = "Proxy ARP set",
#endif
{ "pipex", pipexhelp, CMPL(ta) (char **)pipextab, sizeof(Menu), ipcmd, 1, 1, 1, 0 },
{ "flush", flushhelp, CMPL(ta) (char **)flushlist, sizeof(Menu), flushcmd, 1, 0, 0, 0 },
{ "enable", enablehelp, CMPL(ta) (char **)enabletab, sizeof(Menu), enable, 0, 0, 0, 0 },
+ { "clear", clearhelp, CMPL0 0, 0, clear, 0, 0, 0, 0 },
{ "disable", disablehelp, CMPL0 0, 0, disable, 1, 0, 0, 0 },
{ "route", routehelp, CMPL0 0, 0, route, 1, 1, 1, 0 },
{ "pf", pfhelp, CMPL(t) (char **)ctl_pf, ssctl, ctlhandler, 1, 1, 0, 1 },
return 0;
}
+//clear terminal screen
+int
+clear(void)
+{
+ char *argv[] = {CLEAR, NULL, NULL };
+ cmdargs(CLEAR, argv);
+ return 0;
+}
/*
* disable privileged mode
*/
blob - 2e4977cfe088faa4a96086ab42f1262d2a78f9c1
blob + 6ec08fed8e002091820e76413562211332b40654
--- externs.h
+++ externs.h
#define DEFAULT_EDITOR "/usr/bin/vi"
#define NSHRC_TEMP "/var/run/nshrc"
#define NSHRC "/etc/nshrc"
+#define CLEAR "/usr/bin/clear"
#define PING "/sbin/ping"
#define PING6 "/sbin/ping6"
#define TRACERT "/usr/sbin/traceroute"
blob - eef6496ff45a00493920b48445d4ad089a9ab9a3
blob + edba70f81791519f1fd06bb438b693c6a6943639
--- nsh.8
+++ nsh.8
E.g show all available valid commands with double tab key sequence <tab><tab>
.Bd -literal -offset indent
nsh(config-p)/
-! exit ipsec ping smtp
-? flush ldap ping6 snmp
-arp ftp-proxy ldp pipex ssh
-bgp group motd quit sshd
-bridge halt mpls rad telnet
-configure help nameserver reboot tftp
-ddb hostname ndp relay tftp-proxy
-dhcp ifstate no resolv traceroute
-disable ike nppp rip traceroute6
-dvmrp inet ntp route verbose
-editing interface ospf rtable who
-eigrp ip ospf6 sasync write-config
-enable ip6 pf show
+! disable halt ldap ospf relay smtp verbose
+? do help ldp ospf6 resolv snmp who
+arp dvmrp hostname manual pf rip ssh write-config
+bgp editing ifstate motd ping route sshd
+bridge eigrp ike mpls ping6 rtable telnet
+clear enable inet nameserver pipex sasync tftp
+configure exit interface ndp powerdown saveenv tftp-proxy
+crontab flush ip no quit scheduler traceroute
+ddb ftp-proxy ip6 nppp rad setenv traceroute6
+dhcp group ipsec ntp reboot show unsetenv
nsh(config-p)/
.Ed
If what is typed is ambiguous double tab presents the administrator
pipex Set PIPEX parameters
flush Flush system tables
enable Enable privileged mode
+ clear Clear the terminal screen
disable Disable privileged mode
route Add a host or network route
pf Packet filter control
.Nm
shell.
.Pp
+.Tg clear
+.Ic clear
+.Pp
+Wipe contents of terminal and scrollback buffer and present a
+.Nm
+prompt at the first line of the active terminal.
+See also
+.Xr clear 1
+for more information.
+.Pp
.Tg rtable
.Tg rdomain
.Op no
command, the configuration syntax of
.Ic snmp
daemon is documented in
-.Xr snmpd.conf 5
+.Xr snmpd.conf 5
.Pp
.Tg ldapd
.Tg ldap