1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
|
//
// This file is auto-generated by script docgen.py.
// DO NOT EDIT BY HAND!
//
[[command_exec_exec]]
[command]*`exec`* execute external commands::
----
/exec -list
[-sh|-nosh] [-bg|-nobg] [-stdin|-nostdin] [-buffer <name>] [-l|-o|-n|-nf] [-cl|-nocl] [-sw|-nosw] [-ln|-noln] [-flush|-noflush] [-color ansi|auto|irc|weechat|strip] [-rc|-norc] [-timeout <timeout>] [-name <name>] [-pipe <command>] [-hsignal <name>] <command>
-in <id> <text>
-inclose <id> [<text>]
-signal <id> <signal>
-kill <id>
-killall
-set <id> <property> <value>
-del <id>|-all [<id>...]
-list: list commands
-sh: use the shell to execute the command (WARNING: use this option ONLY if all arguments are safe, see option -nosh)
-nosh: do not use the shell to execute the command (required if the command has some unsafe data, for example the content of a message from another user) (default)
-bg: run process in background: do not display process output neither return code (not compatible with options -o/-n)
-nobg: catch process output and display return code (default)
-stdin: create a pipe for sending data to the process (with /exec -in/-inclose)
-nostdin: do not create a pipe for stdin (default)
-buffer: display/send output of command on this buffer (if the buffer is not found, a new buffer with name "exec.exec.xxx" is created)
-l: display locally output of command on buffer (default)
-o: send output of command to the buffer (not compatible with option -bg)
-n: display output of command in a new buffer (not compatible with option -bg)
-nf: display output of command in a new buffer with free content (no word-wrap, no limit on number of lines) (not compatible with option -bg)
-cl: clear the new buffer before displaying output
-nocl: append to the new buffer without clear (default)
-sw: switch to the output buffer (default)
-nosw: don't switch to the output buffer
-ln: display line numbers (default in new buffer only)
-noln: don't display line numbers
-flush: display output of command in real time (default)
-noflush: display output of command after its end
-color: action on ANSI colors in output:
ansi: keep ANSI codes as-is
auto: convert ANSI colors to WeeChat/IRC (default)
irc: convert ANSI colors to IRC colors
weechat: convert ANSI colors to WeeChat colors
strip: remove ANSI colors
-rc: display return code (default)
-norc: don't display return code
-timeout: set a timeout for the command (in seconds)
-name: set a name for the command (to name it later with /exec)
-pipe: send the output to a WeeChat/plugin command (line by line); if there are spaces in command/arguments, enclose them with double quotes; variable $line is replaced by the line (by default the line is added after the command, separated by a space) (not compatible with options -bg/-o/-n)
-hsignal: send the output as a hsignal (to be used for example in a trigger) (not compatible with options -bg/-o/-n)
command: the command to execute; if beginning with "url:", the shell is disabled and the content of URL is downloaded and sent as output
id: command identifier: either its number or name (if set with "-name xxx")
-in: send text on standard input of process
-inclose: same as -in, but stdin is closed after (and text is optional: without text, the stdin is just closed)
-signal: send a signal to the process; the signal can be an integer or one of these names: hup, int, quit, kill, term, usr1, usr2
-kill: alias of "-signal <id> kill"
-killall: kill all running processes
-set: set a hook property (see function hook_set in plugin API reference)
property: hook property
value: new value for hook property
-del: delete a terminated command
-all: delete all terminated commands
Default options can be set in the option exec.command.default_options.
Examples:
/exec -n ls -l /tmp
/exec -n ps xu | grep weechat
/exec -n -norc url:http://pastebin.com/raw.php?i=xxxxxxxx
/exec -nf -noln links -dump https://weechat.org/files/doc/devel/weechat_user.en.html
/exec -o uptime
/exec -pipe "/print Machine uptime:" uptime
/exec -n tail -f /var/log/messages
/exec -kill 0
----
|