IRC Commands List
The following commands are mostly unique to mIRC, though some are only modifications or extensions of standard IRC commands.
Pops up the address book and shows information for the specified nickname if it exists.
/alias [filename] <aliasname> <commands>
Adds, removes, replaces aliases; it is limited to single line aliases and will not affect mutiple line definitions. To add a new alias, you can use:
/alias /moo /me moos!
This will add the /moo alias to the top of the aliases list. To remove an existing aliases:
To add an alias to a specific alias file, you would use:
/alias moo.txt /moo /me moos!
If you don't specify a filename, it defaults to using the first filename in which the alias exists, or if it doesn't exist then it uses the first loaded aliases file.
This and the /ame command send the specifed message or action to all channels which you are currently on.
This and remote-related commands are listed in the remote section.
/auto [-r] <nickname/address> [#channel1,#channel2,...] [type]
Adds someone to the auto-op list, see the Control section for a full description.
/background [-amsgdluhcfnrtpx] [window] [filename]
Changes the background picture setting for a window. This can also be changed via a windows System Menu.
-a = active window
-m = main mIRC window
-s = status window
-g = finger window
-d = dedicated query window
-cfnrtp = center, fill, normal, stretch, tile, photo
-l = toolbar
-u = toolbar buttons
-h = switchbar
You can right-click in the toolbar/switchbar to pop up a menu for changing these settings. Toolbar buttons can use RGB Colour 192,192,192 for transparency, the BMP must be of the same form as that in mIRC resources. It should be a 16 or 256 colour BMP.
-x = no background picture
Note: The window name should only be specified if none of the window switches are specified. The filename does not need to be specified if you are only changing the display method.
/ban [-ruN] [#channel] <nickname|address> [type]
Bans someone from the current channel using their address. To do this, it first does a /userhost on the user, which gives it the user's address, and then it does a /mode # +b <user address>.
If you specify the -uN option then mIRC pauses N seconds before removing the ban.
If you specify the -r switch then /ban removes the ban of the specified type for that nickname, eg. /ban -r nick 2
If you do not specify a ban type, then mIRC uses the whole email@example.com to do the ban. If you are banning an IP address then a wild card replaces the last number of the IP address. If you are on the channel then the #channel specification is not necessary.
If you specify a wildcard address it is used as-is, if you specify a full address then the type mask is applied to it.
For a list of ban types see the $mask identifier in the Identifiers section.
Note: This command uses the Internal Address List maintained by mIRC.
/beep <number> <delay>
Beeps a number of times with a delay.
/bset, /bread, and /bwrite
These binary commands allow you to handle binary information.
Pops up the channel central window (only works in a channel)
/clear [-sghlc] [windowname]
Clears the entire scrollback buffer of the current window. If you specify a window name, that window's buffer will be cleared.
The -s switch clears the status window.
The -g switch clears the finger window.
The -l switch clears the side-listbox in a custom window.
The -c switch clears the click history in a picture window.
The -h switch clears the editbox command history for a window.
Copies the specified text to the clipboard.
/close [-icfgms@] [nick1] ... [nickN]
Closes all windows of the specified type and nicknames. If no nicknames are given, all windows of the specified type are closed. The type of window is denoted by c for chat, f for fserve, g for get, i for inactive dcc windows, m for message (query), s for send, and @ for custom windows.
If you wanted to close all chat and fserve windows for user Nerp:
/close -cf Nerp
Closes the specified message window.
/copy -o <filename> <filename>
Copies a file to another filename or directory. You can also use wildcards for the source filename, and a directory name for the destination.
The -o switch overwrites a file if it exists.
/creq [+m|-m] [ask | auto | ignore]
This is the command line equivalent of setting the DCC Chat request radio buttons in the dcc options dialog (see /sreq below). The +m|-m switch turns the minimize setting on|off.
/ctcpreply <nick> <ctcp> [message]
Sends a reply to a ctcp query.
/ctcpreply goat HELP no help available.
/dcc send <nickname> <filename>
Initiates a sending a file to another user. It can take multiple file names, the format is:
/dcc send <nickname> <file1> <file2> <file3> ... <fileN>
This will initiate multiple dcc send sessions to the specified user. If you specify a wildcard filename, then the DCC Send dialog will display files matching the wildcard, eg.:
/dcc send moogoat *.txt
/dde [-re] <service> <topic> <item> [data]
Sends information to other applications. See the DDE Control section for a full explanation.
Forces a disconnect from a server. This is different from the /quit command which sends a quit message to the server and waits for the server to disconnect you.
/dns [-c] [nick|address]
Resolves an address. If mIRC sees a "." in the name you specify it assumes it's an address and tries to resolve it. Otherwise it assumes it's a nickname and does a /userhost to find the users address and then resolves it. If you give it an IP address, it looks up the host name.
You can queue multiple /dns requests, and you can view the current queue by using /dns with no parameters.
The -c switch clears all currently queued DNS requests, except for the one currently in progress.
Note: because of the way the DNS lookup works, any DNS related functions currently in progress eg. connecting to a server, must be resolved before subsequent requests. This means that if a prior DNS is having problems resolving, subsequent DNSs have to wait until it times out before they can be resolved.
Manipulates the dedicated query window.
/echo [colour] [-dehiNtsa] [#channel|[=]nick] <text>
Prints text in the specified window using the specified colour (0 to 15).
/echo 3 #mIRC Testing
would print "Testing" in the colour green in channel window #mIRC, assuming it's already open.
If a channel/nickname isn't specified, the -s switch echos to the status window, the -d switch echos to the dedicated message window, and the -a switch echos to the currently active window.
The -e switch encloses the line in line separators.
The -iN switch indents the wrapped line by N characters.
The -h switch forces lines to hard-wrap so resizing the window doesn't change the line.
The -t switch prefixes the line with a timestamp if global time stamping is on or timestamping is on for that window.
Note: This text is only displayed in your own window, it isn't sent to the server so no one else can see it.
/editbox [-sap|[=]window] <text>
Fills the editbox of the current window with the specified text.
The -s switch specifies the Status window.
The -a switch specified the Active window.
The -p switch indicates that a space should be appended to text.
To specify a dcc chat window, prefix the nickname with an = equal sign.
Close down mIRC and exit.
/filter [-sgdfwxnp] <infile> <outfile> <matchtext>
This command scans lines of text in a window or file and if any of them contain matchtext, they are written out to another window or file which you can then use.
The infile can be a filename or a window name (custom or normal). The outfile can be a filename or a custom window name. You should specify the -fw switches if the names are ambiguous eg.
/filter -ff in.txt out.txt *mirc*
This indicates that both are filenames, and:
/filter -wf #in.txt #out.txt *help*
indicates that the first is actually a window name, and the second is a filename.
The -x switch excludes matching lines.
The -n switch prefixes lines with a line number.
The -s switch makes the status window the infile.
The -g switch makes the finger window the infile.
The -d switch makes the dedicated message window the infile.
The -p switch wraps the text output in a custom window.
This command also fills the $filtered identifier with the number of matches found, if any.
If you specify an address then the address is immediately fingered. If you specify a nickname then the users address is looked up using a /userhost and then it is fingered.
/flash [-wb] <text>
This flashes the mIRC window/icon with the specified text in the titlebar but only if mIRC is not the active application.
The -b switch makes mIRC beep every second.
The -w switch makes mIRC play the Flash sound specified in the Event Beeps section.
/flood [on|off|clear] <bytes> <maxlines> <maxmessages> <ignoretime>
Turns flood protection on and off. See the Flood section for a full description.
Flushes the specified INI file to the hard disk. INI files are cached in memory, so you may want to do this to make sure that your INI is updated properly.
/font [-asgb|window] <fontsize> <fontname>
This allows you to change the font for the current window. If no parameters are specified, the font dialog pops up, otherwise the specified parameters are used. You can make the font bold by using the -b switch.
/fsend [on | off]
Turns DCC fast send on or off.
Initiates a fileserver session to another user. See the File Server section.
This is used to jump to different points in a script. See the aliases section.
Halts a script and prevents any further processing. You can use this in remote commands to prevent mIRC from replying to normal ctcp messages, or in aliases to halt an alias, and any calling aliases, completely.
Brings up the Basic IRC Commands section in the mIRC help file with the specified keyword.
Turns the Internal Address List on and off.
/identd [on|off] [userid]
Turns identd server on and off, and changes to a new userid if it is specified.
/ignore [-rpcntixu#] <nickname/address> [type]
Allows you to ignore messages from the specified nick, see the Control section for a full description.
/join [-inx] <#channel>
This is a standard IRC command for joining a channel.
The -i switch makes you join the channel to which you were last invited.
The -n and -x switches minimize/maximize the channel window when you join it.
Prints the line separator selected in the Options dialog Extras section in the specified window.
Retrieves the servers to which your current server is linked.
/load <-a|-pscqnm|-ruvs> <filename>
Loads the specified alias, popup, or script.
/load -a aliases.ini loads an aliases file
/load -pc status.ini loads a channel popup
/load -pn status.ini loads a nickname list popup
/load -ru users.ini loads a users file
/load -rv vars.ini loads a variables file
/load -rs script.ini loads a scripts file
If you try to load a file that is already loaded, it's contents are updated and it's position in the alias/script processing order is maintained.
You can also use the /reload command with the same parameters to reload a file without triggering the on start/load events in the script being loaded.
Note: You can only load one section at a time.
/loadbuf [lines] [-psglecN] <window> <filename>
Loads the specified number of lines from the end of the file of filename into the specified window.
/loadbuf 20 @test info.txt
This loads the last 20 lines of info.txt into custom window @test.
/loadbuf 10-40 @test info.txt
This loads lines 10 to 40 of info.txt into custom window @test.
The -p switch forces lines of text to wrap when added to the window.
The -s and -g switches apply the command to the status and finger windows respectively.
The -l switch applies the command to the side-listbox in a custom window.
The -e switch evaluates variables and identifiers in the line being read.
The -cN switch specifies the default background colour for lines.
/log <on|off> <window> [-f filename]
Turns logging on and off for a window, if you specify a filename the logs file dialog is not popped up.
Creates the specified directory.
/nick <nickname> [alternate]
Changes your current nicknames.
/notify <nickname> [note]
Add a nickname with a note to your notify list. If you don't specify a nickname, a notify request is sent to the irc server to update your notify list.
/omsg [#channel] <message>
This and the /onotice command sends the specified message to all channel ops on a channel. You must be a channel operator to use these commands. If the #channel isn't specified, then the current channel is used.
Parts all of the channels you are currently on. On certain IRC Servers, you can also specify a message.
Turns the "Perform these commands" section of the Perform dialog on and off.
/play [-scp q# m# rl# t#] [channel/nick/stop] <filename> [delay]
This is a powerful command that allows you to send text files, or parts of them, to a user or a channel.
The delay is in milliseconds. If you play files too quickly to a server you will probably be disconnected for flooding. The default setting is 1000 ie. 1 second. Empty lines between text are treated as a delay.
/play c:\text\mypoem.txt 1500
The -s switch allows you to play commands to the status window while offline. If you do not specify the -s switch then you must be connected to a server to use the /play command.
The -c switch forces mIRC to interpret lines as actual commands instead of plain text.
The /play command queues requests by users; it does this because if it tried to play all requests at the same time you would probably be disconnected from a server for flooding.
The -p switch indicates that this is a priority play request and should be placed at the head of the queue for immediate playing. The current play request will be paused and will resume once this play request is finished.
The -q# switch specifies the maximum number of requests that can be queued. If the queue length is already larger than or equal to the specified number then the play request is ignored.
/play -q5 c:\text\info.txt 1000
The -m# switch limits the number of requests that can be queued by a specific user/channel. If the user/channel already has or exceeds the specified number of requests queued then the play request is ignored.
/play -m1 info.txt 1000
The above line limits each user to a maximum of one request at a time and ignores all of their other requests.
Note: The -q# and -m# switches only apply to a /play initiated via a remote definition, not by you.
To combine the above switches you would do:
/play -cpq5m1 info.txt 1000
The -r switch forces a single line to be chosen randomly from a file and played.
/play -r action.txt 1500
The -l# switch forces the specified line-number to be read from a file and played.
/play -l25 witty.txt 1500
For both -r and -l# the first line in the file can be a single number specifying the number of lines in the file, this speeds up the process of reading the file.
The -t switch forces mIRC to look up the specified topic in the file and play all lines under that topic. For example:
/play -thelp1 c:\help.txt
In the help.txt file you would have:
mIRC will play everything after [help1] and stop when it reaches the next topic header or the end of the file.
You can also use the $pnick identifier in commands which identifies the nick/channel to which you are playing.
To stop the playing of a text file and clear the queue you can use /play stop.
/pop <delay> [#channel] <nickname>
Performs a delayed Op on a nickname. The purpose of this command is to prevent a channel window filling up with Op mode changes whenever several users have the same nickname in their auto-op section.
mIRC will pause around <delay> seconds before performing the Op. If <delay> is zero, it does an immediate Op. Before performing the Op it checks if the user is already Opped. If you do not specify the #channel, the current channel is assumed.
/raw [-q] <command>
Sends any parameters you supply directly to the server. You must know the correct RAW format of the command you are sending. Useful for sending commands which mIRC hasn't implemented yet. The -q switch makes the raw work quietly without printing what it's sending. This command does the same thing as /quote in other IRC clients.
/raw PRIVMSG nickname :Hellooo there!
/remini <inifile> <section> [item]
Deletes whole sections or single items in an INI file.
/remini my.ini DDE ServerStatus
This would delete the ServerStatus item, and:
/remini my.ini DDE
Would delete the DDE section.
See the /writeini command below for a related example.
Warning: Do not use this command to modify any of the INI files currently being used by mIRC.
Deletes the specified file.
/rename <filename> <newfilename>
Renames a file, can also be used to move a file from one directory to another.
This resets the $idle identifer to zero or to the number of seconds you specify.
Halts a currently executing script and allows the calling routine to continue processing. You can also optionally return a value which will be stored in the $result identifier. The $result can then be used in the calling routine.
Deletes the specified directory.
Note: If the directory contains files, it cannot be deleted.
/run [-n] <filename> [parameters]
Runs the specified program with parameters.
/run c:\net\ftp.exe sunsite.unc.edu
This runs the ftp program with the parameter sunsite.unc.edu.
/run notepad.exe $?
This asks you for a parameter and runs notepad using the parameter as the filename.
If you specify a non-executable file, mIRC tries to find the program associated with that file and then runs it.
You can specify the -n switch to minimize the window of the program being run.
/save <-pscqnm|-ruv> <filename>
Saves the specified popup or remote users/variables file.
/save -ps status.ini saves the status popup to status.ini
/save -pn nick.ini saves the nickname list popup to nick.ini
/save -ru users.ini saves the user list to users.ini
/save -rv vars.ini saves the variables list to vars.ini
Note: You can only save one section at a time.
/savebuf [-sga] [lines] <window> <filename>
Saves the specified number of lines from the end of the buffer of the specified window into the specified filename.
/savebuf 20 @test info.txt
This saves the last 20 lines in custom window @test to info.txt.
/savebuf 10-40 @test info.txt
This saves lines 10 to 40 in custom window @test to info.txt.
The -s switch saves the status window buffer, the -g switch saves the finger window buffer, and the -a switch makes it append the text to the end of a file instead of overwriting it.
Updates all mIRC-related INI files with the current settings.
This lets you define an alias that writes directly to a channel as if you were saying something. So "/say Hello there" would be the same as just typing "Hello there". This is useful in an alias when you want to ask the same question (or send the same information) again and again.
/info /say Please note that the games server is currently down and will be offline for a few hours...
Note: You can't use this command in the remote section. Use /msg #channel <message> instead.
/server <server/groupname> [port] [password]
Connects you to a server, first disconnecting you from the current server.
/server irc.server.co.uk 6667 mypassword
If you type /server with no parameters, mIRC will connect to the last server you used. If you use the server command while still connected, you will be disconnected with your normal quit message and will then connect to the specified server.
You can also use /server N which connects to the Nth server in the server list in the setup dialog.
You can also use /server groupname which will cycle through all the servers in the server list which have that group name until it connects to one of them.
/set and /unset
Defines and undefines your own Variables.
Manipulates the display of the main mIRC window, where -n = minimize, -r = restore, -s = show, -t = tray, and -x = maximize.
/sline [-a|r] <#channel> <N|nick>
Selects or deselects lines in a channel nickname listbox. It can select either the Nth nickname in a listbox, or a specified nickname.
If you do not specify any switches, any existing selections in the listbox are cleared. If you specify the -a switch then the specified is selected without affecting the selection states of other lines. If you specify the -r switch then the specified item is deselected.
Socket commands and identifiers are described in the Sockets section.
Sends a sound request to another user. See the Sound Requests dialog for more information.
Sends the specified text to Monologue (or Text Assist) which is a program that speaks whatever text is sent to it.
/splay [-qwm] <filename>
Plays the specified .wav or .mid file. If you do not specify a directory, the sounds directory from the Sound Requests options dialog is used. You can also use /splay stop to stop a file that is playing.
The -q switch allows you to queue .wav and .mid sounds for playing.
The -wm switches are used in conjunction with /splay -wm stop, and allow you to specify whether you want to stop .wavs, .mids, or both playing.
/sreq [+m|-m] [ask | auto | ignore]
This is the command line equivalent of setting the DCC Send request radio buttons in the dcc options dialog (see /creq above). The +m|-m switch turns the minimize setting on|off.
Turns control code stripping options in Options dialog on/off.
would turn bold, underline, reverse stripping on, and turn colour stripping off.
/timer[N/name] [-eom] [time] <repetitions> <interval> <command>
Activates the specified timer to perform the specified command at a specified interval, and optionally at a specified time.
If you are not connected to a server and you start a timer, it defaults to being an offline timer which means it will continue to run whether you are connected to a server or not.
If you are connected to a server and you start a timer, it defaults to being an online timer, which means that if you disconnect from the server, it will be turned off. You can specify the -o switch to force it to be an offline timer.
/timer1 0 20 /ame is AWAY!
Timer1 will repeat an all channel action every 20 seconds until you stop the timer.
If you specify a delay of 0 seconds, the timer will trigger immediately after the calling script ends.
/timer5 10 60 /msg #games For more info on the latest games do /msg GaMeBoT info
Timer5 will repeat this message to channel #games every sixty seconds and stop after 10 times.
/timer9 14:30 1 1 /say It's now 2:30pm
This will wait until 2:30pm and will then announce the time once and stop.
To see a list of active timers type /timers. To see the setting for timer1 type /timer1. To deactivate timer1 type /timer1 off. To deactivate all timers type /timers off. If you are activating a new timer you do not need to specify the timer number, just use:
/timer 10 20 /ame I'm not here!
And mIRC will allocate the first free timer it finds to this command.
If you specify the -m switch, this indicates that the interval delay is in milliseconds.
If you specify the -e switch, this executes the command associated with the specified timer name.
Note: millisecond timers can slow mIRC down significantly because each timer can trigger many times per second, so they should not be used unless they are necessary.
The $ltimer identifier returns the number of the timer that was just started by the /timer command.
Instead of using a number you can also specify a name for a timer.
/timershow 0 10 echo -a $nick $server $time
You can force identifiers to be re-evaluated when used in a /timer command by using the format $!me or $!time.
If you wish to turn off a range of timers, you can use a wildcard for the number, for example:
Will turn off all timers from 30 to 39.
/timestamp [-s|a|e] [on|off] [windowname]
Turns time-stamping of events on/off, and attempts to timestamp most events that occur.
-s = for status window
-a = for active window
-e = for every window
If a windowname is not specified, then the global timstamp switch is turned on or off.
/titlebar [@window] <text>
Sets the main application titlebar. If you specify a custom @window name, then the titlebar for that custom window is changed.
/unload <-a|-rs> <filename>
Unloads the specified alias or remote script file.
/unload -a aliases.ini unloads the alias.ini file
/unload -rs script.ini unloads the script.ini file
Note: You can only unload one section at a time.
Updates the channel nicknames lists and IAL in a kick/part/quit script event.
/url [-d] [on|off|hide]
Pops up the URL list window. If you specify the [-d] then all "?" marked items will be deleted before showing the window.
You can also use on|off to turn URL catching on or off and hide to hide the URL window if it is currently showing.
See URL Catcher options for other settings.
/uwho [nickname] [nickname]
Pops up the address book and shows the server information for the specified user. It is the same information you would get if you did a "/whois nickname".
/window [-abcdelnorsx] <@name> [x y [w h]] [/command] [popup.txt] [font [size]]
Creates and manipulates custom windows.
/winhelp <filename> [key]
Opens a help file with the specified search key.
/write [-cida l# s#] <filename> [text]
Writes lines to a text file. For example:
/write store.txt This line will be appended to the file store.txt
The -c switch clears the file completely before writing to it, so it allows you to start with a clean slate.
/write -c c:\info.txt This file will be erased and have this line written to it
The -l# switch specifies the line number where the text is to be written. If you do not specify a line number then the line is added to the end of the file.
/write -l5 c:\info.txt This line will overwrite the 5th line in the file
The -i switch indicates that the text should be inserted at the specified line instead of overwriting it. If you do not specify any text then a blank line is inserted. If you do not specify a line number then a blank line is added to the end of the file.
/write -il5 c:\info.txt This line will be inserted at the 5th line in the file
The -d switch deletes a line in the file. If you don't specify a line number then the last line in the file is deleted.
/write -dl5 c:\info.txt
The above command will delete the 5th line in the file.
The -s# switch scans a file for the line beginning with the specified text and performs the operation on that line.
/write -dstest c:\info.txt
This will scan file info.txt for a line beginning with the word "test" and if found, deletes it.
If you do not specify any switches then the text is just added to the end of the file.
The -a switch indicates that mIRC should append the line of text you specified to the existing text of the specified line.
/writeini <inifile> <section> [item] [value]
Writes to files in the standard INI file format.
A part of the mirc.ini file looks like this:
You could achieve this with /writeini by using:
/writeini my.ini DDE ServerStatus on
/writeini my.ini DDE ServiceName mirc
You can delete whole sections or items by using the /remini command.
Warning: Do not use this command to modify any of the INI files currently being used by mIRC.