List of IRC commands: Difference between revisions

Content deleted Content added
m minor cleanup - no factual changes; sort out nowiki markup, clean up english at intro; some wikilinks added
Tag: nowiki added
m Reverted edits by 2600:387:15:2F34:0:0:0:8 (talk) (HG) (3.4.13)
 
(65 intermediate revisions by 49 users not shown)
Line 1:
{{short description|none}}
{{Use dmy dates|date=February 2016}}
{{how-to |date=June 2024}}
<!-- ATTENTION EDITORS:
Do NOT include service-specific commands on this list. THEY WILL BE REMOVED.
-->
This is a list of all '''[[Internet Relay Chat]] commands''' from [[Request for Comments|RFC]] 1459, RFC 2812, and extensions added to major IRC daemons. Most IRC clients require commands to be preceded by a slash ("<code>/</code>"). Some commands are actually sent to [[IRC bot]]s; these are treated by the IRC protocol as ordinary messages, not as <code>/</code>-commands.
 
Conventions used here: Angle brackets ("&lt;" and "&gt;") are used here to indicate a placeholder for some value, and are not a literal part of a command. Square brackets ("[" and "]") are used to indicate that a value is <i>''optional</i>''.
 
== User commands ==
Line 14 ⟶ 16:
:<code>ADMIN [<nowiki><target></nowiki>]</code>
 
Instructs the [[Server (computing)|server]] to return information about the administrators of the server specified by <nowiki><target></nowiki>, where <nowiki><target></nowiki> is either a server or a user. If <nowiki><target></nowiki> is omitted, the server should return information about the administrators of the current server.<ref>{{cite IETF
| rfc = 1459
| sectionname = Admin command
| section = 4.3.7
| page = 31
| idanchor = ietf
| sectionnametitle = Admin command
}}</ref>
 
Line 29 ⟶ 31:
Provides the server with a message to automatically send in reply to a PRIVMSG directed at the user, but not to a channel they are on.<ref>{{cite IETF
| rfc = 1459
| sectionnametitle = Away
| section = 5.1
| pages = 38 – 39
Line 66 ⟶ 68:
Instructs the server <nowiki><remote server></nowiki> (or the current server, if <nowiki><remote server></nowiki> is omitted) to connect to <nowiki><target server></nowiki> on port <nowiki><port></nowiki>.<ref>{{cite IETF
| rfc = 1459
| sectionnametitle = Connect message
| section = 4.3.5
| pages = 29 – 30
Line 72 ⟶ 74:
}}</ref><ref>{{cite IETF
| rfc = 2812
| sectionnametitle = Connect message
| section = 3.4.7
| pages = 28 – 29
Line 86 ⟶ 88:
Instructs the server to shut down.<ref>{{cite IETF
| rfc = 2812
| sectionnametitle = Die message
| section = 4.3
| page = 39
Line 97 ⟶ 99:
:<code><nowiki>:<source> ENCAP <destination> <subcommand> <parameters></nowiki></code>
 
This command is for use by servers to encapsulate commands so that they will propagate across hub servers not yet updated to support them, and indicates the subcommand and its parameters should be passed unaltered to the destination, where it will be unencapsulated and parsed. This facilitates implementation of new features without a need to restart all servers before they are usable across the network.<ref>[{{Cite web |url=http://www.leeh.co.uk/ircd/encap.txt] |title=Archived copy |access-date=6 December 2012 |archive-url=https://web.archive.org/web/20130605105226/http://www.leeh.co.uk/ircd/encap.txt |archive-date=5 June 2013 |url-status=dead }}</ref>
 
=== ERROR ===
Line 106 ⟶ 108:
This command is for use by servers to report errors to other servers. It is also used before terminating client connections.<ref>{{cite IETF
| rfc = 1459
| sectionnametitle = Error
| section = 4.6.4
| page = 38
Line 117 ⟶ 119:
:<code><nowiki>HELP</nowiki></code>
 
Requests the server to display the help file. This command is not formally defined in an RFC, but is in use by most{{which|date=August 2014}} major IRC daemons.
 
=== INFO ===
Line 126 ⟶ 128:
Returns information about the <nowiki><target></nowiki> server, or the current server if <nowiki><target></nowiki> is omitted.<ref>{{cite IETF
| rfc = 1459
| sectionnametitle = Info command
| section = 4.3.8
| pages = 31 – 32
| idanchor = ietf
}}</ref> Information returned includes the server’sserver's version, when it was [[compiler|compiled]], the [[Patch (computing)|patch level]], when it was started, and any other information which may be considered to be relevant. Defined in RFC 1459.
 
=== INVITE ===
Line 139 ⟶ 141:
Invites <nowiki><nickname></nowiki> to the channel <nowiki><channel></nowiki>.<ref>{{cite IETF
| rfc = 1459
| sectionnametitle = Invite message
| section = 4.2.7
| page = 25
Line 152 ⟶ 154:
Queries the server to see if the clients in the space-separated list <nowiki><nicknames></nowiki> are currently on the network.<ref>{{cite IETF
| rfc = 1459
| sectionnametitle = Ison message
| section = 5.8
| page = 42
Line 165 ⟶ 167:
Makes the client join the channels in the comma-separated list <nowiki><channels></nowiki>, specifying the passwords, if needed, in the comma-separated list <nowiki><keys></nowiki>.<ref>{{cite IETF
| rfc = 1459
| sectionnametitle = Join message
| section = 4.2.1
| pages = 19 – 20
Line 174 ⟶ 176:
 
Syntax:
:<code><nowiki>KICK <channel> <client> :[<message>]</nowiki></code>
 
Forcibly removes <nowiki><client></nowiki> from <nowiki><channel></nowiki>.<ref>{{cite IETF
| rfc = 1459
| sectionnametitle = Kick command
| section = 4.2.8
| pages = 25 – 26
Line 191 ⟶ 193:
Forcibly removes <nowiki><client></nowiki> from the network.<ref>{{cite IETF
| rfc = 1459
| sectionnametitle = Kill message
| section = 4.6.1
| page = 36
Line 202 ⟶ 204:
:<code><nowiki>KNOCK <channel> [<message>]</nowiki></code>
 
Sends a NOTICE to an invitation-only <nowiki><channel></nowiki> with an optional <nowiki><message></nowiki>, requesting an invite. This command is not formally defined by an RFC, but is supported by most{{which|date=August 2014}} major IRC daemons. Support is indicated in a RPL_ISUPPORT reply (numeric 005) with the KNOCK keyword.
 
=== LINKS ===
Line 211 ⟶ 213:
Lists all server links matching <nowiki><server mask></nowiki>, if given, on <nowiki><remote server></nowiki>, or the current server if omitted.<ref>{{cite IETF
| rfc = 1459
| sectionnametitle = Links message
| section = 4.3.3
| pages = 28 – 29
Line 224 ⟶ 226:
Lists all channels on the server.<ref>{{cite IETF
| rfc = 1459
| sectionnametitle = List message
| section = 4.2.6
| pages = 24 – 25
Line 237 ⟶ 239:
Returns statistics about the size of the network.<ref>{{cite IETF
| rfc = 2812
| sectionnametitle = Lusers message
| section = 3.4.2
| pages = 25 – 26
Line 251 ⟶ 253:
The MODE command is dual-purpose. It can be used to set both user and channel modes.<ref>{{cite IETF
| rfc = 1459
| sectionnametitle = Mode message
| section = 4.2.3
| pages = 21 – 23
Line 264 ⟶ 266:
Returns the message of the day on <nowiki><server></nowiki> or the current server if it is omitted.<ref>{{cite IETF
| rfc = 2812
| sectionnametitle = Motd message
| section = 3.4.1
| page = 25
Line 278 ⟶ 280:
Returns a list of who is on the comma-separated list of <nowiki><channels></nowiki>, by channel name.<ref>{{cite IETF
| rfc = 1459
| sectionnametitle = Names message
| section = 4.2.5
| page = 24
Line 284 ⟶ 286:
}}</ref> If <nowiki><channels></nowiki> is omitted, all users are shown, grouped by channel name with all users who are not on a channel being shown as part of channel "*". If <nowiki><server></nowiki> is specified, the command is sent to <nowiki><server></nowiki> for evaluation.<ref>{{cite IETF
| rfc = 2812
| sectionnametitle = Names message
| section = 3.2.5
| pages = 20 – 21
Line 294 ⟶ 296:
:<code>:irc.server.net 353 Phyre = #SomeChannel :@WiZ</code>
 
If a client wants to receive all the channel status prefixes of a user and not only their current highest one, the IRCv3 multi-prefix extension can be enabled (@ is the channel operator prefix, and + the lower voice status prefix):<ref name="andrewnorthall">{{cite web |url=http://ircv3.atheme.org/extensions/multi-prefix-3.1 |title=IRCv3 – Welcome |author=Andrew Northall |date= |publisher=ircv3.net |work=atheme.org |accessdateaccess-date=21 February 2016 |archive-date=9 January 2015 |archive-url=https://web.archive.org/web/20150109104555/http://ircv3.atheme.org/extensions/multi-prefix-3.1 |url-status=live }}</ref>
 
:<code>:irc.server.net 353 Phyre = #SomeChannel :@+WiZ</code>
 
See also NAMESX below for an alternate, older approach to achieve the same effect. However, by today most clients and servers support the new IRCv3 standard.<ref>{{cite web|url=http://ircv3.atheme.org/|title=IRCv3 – Welcome|author=Andrew Northall|date=|work=atheme.org|accessdateaccess-date=21 February 2016|archive-date=17 February 2015|archive-url=https://web.archive.org/web/20150217030215/http://ircv3.atheme.org/|url-status=live}}</ref>
 
=== NAMESX ===
 
Syntax:
:<code><nowiki>PROTOCTL NAMESX</nowiki></code>
 
Instructs the server to send names in an RPL_NAMES reply prefixed with all their respective channel statuses instead of just the highest one (similar to IRCv3’s multi-prefix).
 
For example:
 
With NAMESX
:<code>:irc.server.net 353 Phyre = #SomeChannel :@+WiZ</code>
 
Without NAMESX
:<code>:irc.server.net 353 Phyre = #SomeChannel :@WiZ</code>
 
This command can ONLY be used if the NAMESX keyword is returned in an RPL_ISUPPORT (numeric 005) reply. It may also be combined with the UHNAMES command.
 
This command is not formally defined in an RFC, but is recognized by most major IRC daemons. The newer modern approach is to use IRCv3 protocol extensions to activate the multi-prefix extension for the regular NAMES command.<ref name="andrewnorthall" />
 
=== NICK ===
Line 327 ⟶ 310:
Allows a client to change their IRC nickname. Hopcount is for use between servers to specify how far away a nickname is from its home server.<ref>{{cite IETF
| rfc = 1459
| sectionnametitle = Nick message
| section = 4.1.2
| pages = 14 – 15
Line 333 ⟶ 316:
}}</ref><ref>{{cite IETF
| rfc = 2812
| sectionnametitle = Nick message
| section = 3.1.2
| pages = 10 – 11
Line 346 ⟶ 329:
This command works similarly to PRIVMSG, except automatic replies must never be sent in reply to NOTICE messages.<ref>{{cite IETF
| rfc = 1459
| sectionnametitle = Notice
| section = 4.4.2
| page = 33
Line 359 ⟶ 342:
Authenticates a user as an IRC operator on that server/network.<ref>{{cite IETF
| rfc = 1459
| sectionnametitle = Oper
| section = 4.1.5
| page = 17
Line 372 ⟶ 355:
Causes a user to leave the channels in the comma-separated list <nowiki><channels></nowiki>.<ref>{{cite IETF
| rfc = 1459
| sectionnametitle = Part message
| section = 4.2.2
| pages = 20 – 21
Line 385 ⟶ 368:
Sets a connection password.<ref>{{cite IETF
| rfc = 1459
| sectionnametitle = Password message
| section = 4.1.1
| page = 14
Line 398 ⟶ 381:
Tests the presence of a connection.<ref>{{cite IETF
| rfc = 1459
| sectionnametitle = Ping message
| section = 4.6.2
| page = 37
Line 411 ⟶ 394:
This command is a reply to the PING command and works in much the same way.<ref>{{cite IETF
| rfc = 1459
| sectionnametitle = Pong message
| section = 4.6.3
| pages = 37 – 38
Line 420 ⟶ 403:
 
Syntax:
:<code><nowiki>PRIVMSG <msgtarget> :<message></nowiki></code>
 
Sends <nowiki><message></nowiki> to <nowiki><msgtarget></nowiki>, which is usually a user or channel.<ref>{{cite IETF
| rfc = 1459
| sectionnametitle = Private messages
| section = 4.4.1
| pages = 32 – 33
Line 437 ⟶ 420:
Disconnects the user from the server.<ref>{{cite IETF
| rfc = 1459
| sectionnametitle = Quit
| section = 4.1.6
| pages = 17 – 18
| idanchor = ietf
}}</ref> Defined in RFC 1459.
 
=== NAMESXQUOTE ===
Syntax:
:<code><nowiki>PROTOCTL NAMESXQUOTE</nowiki></code>
 
Sends a command string to the server as-is, i.e. without parsing it in the client application.
<ref>{{cite web
| url = https://irssi.org/documentation/help/quote/
| title = quote - Irssi help page
| author = [[Irssi]] developers
}}</ref>
<ref><code>/quote</code> is cited in the [[mIRC]] documentation ([https://www.mirc.com/help/html/index.html?mirc_commands.html]) as an equivalent of mIRC's <code>/raw</code> command, but which is supported in the other IRC clients.</ref>
 
=== REHASH ===
Line 450 ⟶ 445:
Causes the server to re-read and re-process its configuration file(s).<ref>{{cite IETF
| rfc = 1459
| sectionnametitle = Rehash message
| section = 5.2
| page = 39
| idanchor = ietf
}}</ref> This command can only be sent by IRC operators. Defined in RFC 1459.
 
=== RESTART ===
 
Syntax:
:<code><nowiki>RESTART</nowiki></code>
 
Restarts a server.<ref>{{cite IETF
| rfc = 1459
| sectionname = Restart message
| section = 5.3
| pages = 39 – 40
| idanchor = ietf
}}</ref> It may only be sent by IRC operator. Defined in RFC 1459.
 
=== RULES ===
Line 483 ⟶ 465:
The server message is used to tell a server that the other end of a new connection is a server.<ref>{{cite IETF
| rfc = 1459
| sectionnametitle = Server message
| section = 4.1.4
| pages = 16 – 17
Line 496 ⟶ 478:
 
Syntax:
:<code><nowiki>SERVICE <nickname> <reserved> <distribution> <type> <reserved> <info></nowiki></code>
 
Registers a new service on the network.<ref>{{cite IETF
| rfc = 2812
| sectionname = Service message
| section = 3.1.6
| pages = 13 – 14
| idanchor = ietf
}}</ref> Defined in RFC 2812.
 
=== SERVLIST ===
 
Syntax:
:<code><nowiki>SERVLIST [<mask> [<type>]]</nowiki></code>
 
Lists the services currently on the network.<ref>{{cite IETF
| rfc = 2812
| sectionname = Servlist message
| section = 3.5.1
| page = 31
| idanchor = ietf
}}</ref> Defined in RFC 2812.
 
=== SQUERY ===
Line 526 ⟶ 488:
Identical to PRIVMSG except the recipient must be a service.<ref>{{cite IETF
| rfc = 2812
| sectionnametitle = Squery
| section = 3.5.2
| page = 32
Line 539 ⟶ 501:
Causes <nowiki><server></nowiki> to quit the network.<ref>{{cite IETF
| rfc = 1459
| sectionnametitle = Server quit message
| section = 4.1.7
| pages = 18 – 19
Line 559 ⟶ 521:
:<code><nowiki>SILENCE [+/-<hostmask>]</nowiki></code>
 
Adds or removes a host mask to a server-side ignore list that prevents matching users from sending the client messages. More than one mask may be specified in a space-separated list, each item prefixed with a "+" or "-" to designate whether it is being added or removed. Sending the command with no parameters returns the entries in the client’sclient's ignore list.
 
This command is not formally defined in an RFC, but is supported by most{{which|date=August 2014}} major IRC daemons. Support is indicated in a RPL_ISUPPORT reply (numeric 005) with the SILENCE keyword and the maximum number of entries a client may have in its ignore list. For example:
Line 570 ⟶ 532:
:<code><nowiki>STATS <query> [<server>]</nowiki></code>
 
Returns statistics about the current server, or <nowiki><server></nowiki> if it’sit's specified.<ref>{{cite IETF
| rfc = 1459
| sectionnametitle = Stats message
| section = 4.3.2
| pages = 27 – 28
Line 586 ⟶ 548:
Gives users who are on the same host as <nowiki><server></nowiki> a message asking them to join IRC.<ref>{{cite IETF
| rfc = 1459
| sectionnametitle = Summon message
| section = 5.4
| page = 40
Line 592 ⟶ 554:
}}</ref><ref>{{cite IETF
| rfc = 2812
| sectionnametitle = Summon message
| section = 4.5
| page = 40
Line 605 ⟶ 567:
Returns the local time on the current server, or <nowiki><server></nowiki> if specified.<ref>{{cite IETF
| rfc = 1459
| sectionnametitle = Time message
| section = 4.3.4
| page = 29
Line 618 ⟶ 580:
Allows the client to query or set the channel topic on <nowiki><channel></nowiki>.<ref>{{cite IETF
| rfc = 1459
| sectionnametitle = Topic message
| section = 4.2.4
| pages = 23 – 24
Line 631 ⟶ 593:
Trace a path across the IRC network to a specific server or client, in a similar method to [[traceroute]].<ref>{{cite IETF
| rfc = 1459
| sectionnametitle = Trace message
| section = 4.3.6
| pages = 30 – 31
| idanchor = ietf
}}</ref> Defined in RFC 1459.
 
=== UHNAMES ===
 
Syntax:
:<code><nowiki>PROTOCTL UHNAMES</nowiki></code>
 
Instructs the server to send names in an RPL_NAMES reply in the long format:
 
With UHNAMES
:<code>:irc.server.net 353 Phyre = #SomeChannel :WiZ!user@somehost</code>
 
Without UHNAMES
:<code>:irc.server.net 353 Phyre = #SomeChannel :WiZ</code>
 
This command can ONLY be used if the UHNAMES keyword is returned in an RPL_ISUPPORT (numeric 005) reply. It may also be combined with the NAMESX command.
 
This command is not formally defined in an RFC, but is recognized by most major IRC daemons.
 
=== USER ===
Line 662 ⟶ 607:
This command is used at the beginning of a connection to specify the username, hostname, real name and initial user modes of the connecting client.<ref>{{cite IETF
| rfc = 1459
| sectionnametitle = User message
| section = 4.1.3
| pages = 15 – 16
Line 668 ⟶ 613:
}}</ref><ref>{{cite IETF
| rfc = 2812
| sectionnametitle = User message
| section = 3.1.3
| page = 11
Line 681 ⟶ 626:
Returns a list of information about the nicknames specified.<ref>{{cite IETF
| rfc = 1459
| sectionnametitle = Userhost message
| section = 5.7
| page = 42
Line 703 ⟶ 648:
Returns a list of users and information about those users in a format similar to the [[UNIX]] commands [[who (Unix)|who]], rusers and [[finger (Unix)|finger]].<ref>{{cite IETF
| rfc = 1459
| sectionnametitle = Users
| section = 5.5
| pages = 40 – 41
Line 716 ⟶ 661:
Returns the [[software version|version]] of <nowiki><server></nowiki>, or the current server if omitted.<ref>{{cite IETF
| rfc = 1459
| sectionnametitle = Version message
| section = 4.3.1
| pages = 26 – 27
Line 729 ⟶ 674:
Sends <nowiki><message></nowiki> to all operators connected to the server (RFC 1459), or all users with user mode 'w' set (RFC 2812).<ref>{{cite IETF
| rfc = 1459
| sectionnametitle = Operwall message
| section = 5.6
| page = 41
Line 735 ⟶ 680:
}}</ref><ref>{{cite IETF
| rfc = 2812
| sectionnametitle = Operwall message
| section = 4.7
| pages = 41 – 42
Line 746 ⟶ 691:
:<code><nowiki>WATCH [+/-<nicknames>]</nowiki></code>
 
Adds or removes a user to a client’sclient's server-side friends list. More than one nickname may be specified in a space-separated list, each item prefixed with a "+" or "-" to designate whether it is being added or removed. Sending the command with no parameters returns the entries in the client’sclient's friends list.
 
This command is not formally defined in an RFC, but is supported by most{{which|date=August 2014}} major IRC daemons. Support is indicated in a RPL_ISUPPORT reply (numeric 005) with the WATCH keyword and the maximum number of entries a client may have in its friends list. For example:
Line 759 ⟶ 704:
Returns a list of users who match <nowiki><name></nowiki>.<ref>{{cite IETF
| rfc = 1459
| sectionnametitle = Who query
| section = 4.5.1
| pages = 33 – 34
Line 772 ⟶ 717:
Returns information about the comma-separated list of nicknames masks <nowiki><nicknames></nowiki>.<ref>{{cite IETF
| rfc = 1459
| sectionnametitle = Whois query
| section = 4.5.2
| pages = 34 – 35
Line 785 ⟶ 730:
Used to return information about a nickname that is no longer in use (due to client disconnection, or nickname changes).<ref>{{cite IETF
| rfc = 1459
| sectionnametitle = Whowas
| section = 4.5.3
| page = 35
Line 791 ⟶ 736:
}}</ref> If given, the server will return information from the last <nowiki><count></nowiki> times the nickname has been used. If <nowiki><server></nowiki> is given, the command is forwarded to it for processing. In RFC 2812, <nickname> can be a comma-separated list of nicknames.<ref>{{cite IETF
| rfc = 2812
| sectionnametitle = Whowas
| section = 3.6.3
| page = 34
Line 814 ⟶ 759:
| last1 = Oikarinen
| first1 = Jarkko
| authorlink1author-link1 = Jarkko Oikarinen
| last2 = Reed
| first2 = Darren
| year date=May 1993
| month = May
| publisher = [[Internet Engineering Task Force|IETF]]
| accessdateaccess-date = 30 October 2009
| ref = ietf
}}
Line 828 ⟶ 772:
| last = Kalt
| first = Christophe
| year date=April 2000
| month = April
| publisher = [[Internet Engineering Task Force|IETF]]
| accessdateaccess-date = 30 October 2009
| ref = ietf
}}
Line 841 ⟶ 784:
| last = Reed
| first = Darren
| year date=May 1992
| month = May
| publisher = [[Internet Engineering Task Force|IETF]]
| accessdateaccess-date = 30 October 2009
}}
* {{cite IETF
Line 851 ⟶ 793:
| last = Kalt
| first = Christophe
| year date=April 2000
| month = April
| publisher = [[Internet Engineering Task Force|IETF]]
| accessdateaccess-date = 30 October 2009
}}
* {{cite IETF
Line 861 ⟶ 802:
| last = Kalt
| first = Christophe
| year date=April 2000
| month = April
| publisher = [[Internet Engineering Task Force|IETF]]
| accessdateaccess-date = 30 October 2009
}}
* {{cite IETF
Line 871 ⟶ 811:
| last = Kalt
| first = Christophe
| year date=April 2000
| month = April
| publisher = [[Internet Engineering Task Force|IETF]]
| accessdateaccess-date = 30 October 2009
}}
 
== External links ==
* [http://toxin.jottit.com/xchat_help_commands XChat Help Commands]
 
{{IRC topics}}
{{authority control}}
 
[[Category:Internet Relay ChatIRC]]
[[Category:Computing commands]]