diff options
author | vda <vda@69ca8d6d-28ef-0310-b511-8ec308f3f277> | 2006-11-05 00:47:38 +0000 |
---|---|---|
committer | vda <vda@69ca8d6d-28ef-0310-b511-8ec308f3f277> | 2006-11-05 00:47:38 +0000 |
commit | a76b1a148dd871587bfc6a579a6b245684e6b5ce (patch) | |
tree | 26c381fbbc503b76f1021126180b4704b35ae4a8 | |
parent | 875a2f7f50dc4b30ea0aa78ed5e0168d087d7bb1 (diff) | |
download | busybox-w32-a76b1a148dd871587bfc6a579a6b245684e6b5ce.tar.gz busybox-w32-a76b1a148dd871587bfc6a579a6b245684e6b5ce.tar.bz2 busybox-w32-a76b1a148dd871587bfc6a579a6b245684e6b5ce.zip |
ps: add documentation on POSIX ps
git-svn-id: svn://busybox.net/trunk/busybox@16513 69ca8d6d-28ef-0310-b511-8ec308f3f277
-rw-r--r-- | procps/ps.c | 2 | ||||
-rw-r--r-- | procps/ps.posix | 175 |
2 files changed, 176 insertions, 1 deletions
diff --git a/procps/ps.c b/procps/ps.c index 3cb86e49c..e18bd2a58 100644 --- a/procps/ps.c +++ b/procps/ps.c | |||
@@ -385,4 +385,4 @@ int ps_main(int argc, char **argv) | |||
385 | return EXIT_SUCCESS; | 385 | return EXIT_SUCCESS; |
386 | } | 386 | } |
387 | 387 | ||
388 | #endif | 388 | #endif /* ENABLE_DESKTOP */ |
diff --git a/procps/ps.posix b/procps/ps.posix new file mode 100644 index 000000000..57f4fa8af --- /dev/null +++ b/procps/ps.posix | |||
@@ -0,0 +1,175 @@ | |||
1 | This is what POSIX 2003 says about ps: | ||
2 | |||
3 | By default, ps shall select all processes with the same effective user | ||
4 | ID as the current user and the same controlling terminal as the invoker | ||
5 | |||
6 | ps [-aA][-defl][-G grouplist][-o format]...[-p proclist][-t termlist] | ||
7 | [-U userlist][-g grouplist][-n namelist][-u userlist] | ||
8 | |||
9 | -a Write information for all processes associated with terminals. | ||
10 | Implementations may omit session leaders from this list. | ||
11 | |||
12 | -A Write information for all processes. | ||
13 | |||
14 | -d Write information for all processes, except session leaders. | ||
15 | |||
16 | -e Write information for all processes. (Equivalent to -A.) | ||
17 | |||
18 | -f Generate a full listing. (See the STDOUT section for the con- | ||
19 | tents of a full listing.) | ||
20 | |||
21 | -g grouplist | ||
22 | Write information for processes whose session leaders are given | ||
23 | in grouplist. The application shall ensure that the grouplist is | ||
24 | a single argument in the form of a <blank> or comma-separated | ||
25 | list. | ||
26 | |||
27 | -G grouplist | ||
28 | Write information for processes whose real group ID numbers are | ||
29 | given in grouplist. The application shall ensure that the grou- | ||
30 | plist is a single argument in the form of a <blank> or comma- | ||
31 | separated list. | ||
32 | |||
33 | -l Generate a long listing. (See STDOUT for the contents of a long | ||
34 | listing.) | ||
35 | |||
36 | -n namelist | ||
37 | Specify the name of an alternative system namelist file in place | ||
38 | of the default. The name of the default file and the format of a | ||
39 | namelist file are unspecified. | ||
40 | |||
41 | -o format | ||
42 | Write information according to the format specification given in | ||
43 | format. Multiple -o options can be specified; the format speci- | ||
44 | fication shall be interpreted as the <space>-separated concate- | ||
45 | nation of all the format option-arguments. | ||
46 | |||
47 | -p proclist | ||
48 | Write information for processes whose process ID numbers are | ||
49 | given in proclist. The application shall ensure that the pro- | ||
50 | clist is a single argument in the form of a <blank> or comma- | ||
51 | separated list. | ||
52 | |||
53 | -t termlist | ||
54 | Write information for processes associated with terminals given | ||
55 | in termlist. The application shall ensure that the termlist is a | ||
56 | single argument in the form of a <blank> or comma-separated | ||
57 | list. Terminal identifiers shall be given in an implementation- | ||
58 | defined format. On XSI-conformant systems, they shall be | ||
59 | given in one of two forms: the device's filename (for example, | ||
60 | tty04) or, if the device's filename starts with tty, just the | ||
61 | identifier following the characters tty (for example, "04" ). | ||
62 | |||
63 | -u userlist | ||
64 | Write information for processes whose user ID numbers or login | ||
65 | names are given in userlist. The application shall ensure that | ||
66 | the userlist is a single argument in the form of a <blank> or | ||
67 | comma-separated list. In the listing, the numerical user ID | ||
68 | shall be written unless the -f option is used, in which case the | ||
69 | login name shall be written. | ||
70 | |||
71 | -U userlist | ||
72 | Write information for processes whose real user ID numbers or | ||
73 | login names are given in userlist. The application shall ensure | ||
74 | that the userlist is a single argument in the form of a <blank> | ||
75 | or comma-separated list. | ||
76 | |||
77 | With the exception of -o format, all of the options shown are used to | ||
78 | select processes. If any are specified, the default list shall be | ||
79 | ignored and ps shall select the processes represented by the inclusive | ||
80 | OR of all the selection-criteria options. | ||
81 | |||
82 | The -o option allows the output format to be specified under user con- | ||
83 | trol. | ||
84 | |||
85 | The application shall ensure that the format specification is a list of | ||
86 | names presented as a single argument, <blank> or comma-separated. Each | ||
87 | variable has a default header. The default header can be overridden by | ||
88 | appending an equals sign and the new text of the header. The rest of | ||
89 | the characters in the argument shall be used as the header text. The | ||
90 | fields specified shall be written in the order specified on the command | ||
91 | line, and should be arranged in columns in the output. The field widths | ||
92 | shall be selected by the system to be at least as wide as the header | ||
93 | text (default or overridden value). If the header text is null, such as | ||
94 | -o user=, the field width shall be at least as wide as the default | ||
95 | header text. If all header text fields are null, no header line shall | ||
96 | be written. | ||
97 | |||
98 | ruser The real user ID of the process. This shall be the textual user | ||
99 | ID, if it can be obtained and the field width permits, or a dec- | ||
100 | imal representation otherwise. | ||
101 | |||
102 | user The effective user ID of the process. This shall be the textual | ||
103 | user ID, if it can be obtained and the field width permits, or a | ||
104 | decimal representation otherwise. | ||
105 | |||
106 | rgroup The real group ID of the process. This shall be the textual | ||
107 | group ID, if it can be obtained and the field width permits, or | ||
108 | a decimal representation otherwise. | ||
109 | |||
110 | group The effective group ID of the process. This shall be the textual | ||
111 | group ID, if it can be obtained and the field width permits, or | ||
112 | a decimal representation otherwise. | ||
113 | |||
114 | pid The decimal value of the process ID. | ||
115 | |||
116 | ppid The decimal value of the parent process ID. | ||
117 | |||
118 | pgid The decimal value of the process group ID. | ||
119 | |||
120 | pcpu The ratio of CPU time used recently to CPU time available in the | ||
121 | same period, expressed as a percentage. The meaning of | ||
122 | "recently" in this context is unspecified. The CPU time avail- | ||
123 | able is determined in an unspecified manner. | ||
124 | |||
125 | vsz The size of the process in (virtual) memory in 1024 byte units | ||
126 | as a decimal integer. | ||
127 | |||
128 | nice The decimal value of the nice value of the process; see nice() . | ||
129 | |||
130 | etime In the POSIX locale, the elapsed time since the process was | ||
131 | started, in the form: [[dd-]hh:]mm:ss | ||
132 | |||
133 | time In the POSIX locale, the cumulative CPU time of the process in | ||
134 | the form: [dd-]hh:mm:ss | ||
135 | |||
136 | tty The name of the controlling terminal of the process (if any) in | ||
137 | the same format used by the who utility. | ||
138 | |||
139 | comm The name of the command being executed ( argv[0] value) as a | ||
140 | string. | ||
141 | |||
142 | args The command with all its arguments as a string. The implementa- | ||
143 | tion may truncate this value to the field width; it is implemen- | ||
144 | tation-defined whether any further truncation occurs. It is | ||
145 | unspecified whether the string represented is a version of the | ||
146 | argument list as it was passed to the command when it started, | ||
147 | or is a version of the arguments as they may have been modified | ||
148 | by the application. Applications cannot depend on being able to | ||
149 | modify their argument list and having that modification be | ||
150 | reflected in the output of ps. | ||
151 | |||
152 | Any field need not be meaningful in all implementations. In such a case | ||
153 | a hyphen ( '-' ) should be output in place of the field value. | ||
154 | |||
155 | Only comm and args shall be allowed to contain <blank>s; all others | ||
156 | shall not. | ||
157 | |||
158 | The following table specifies the default header to be used in the | ||
159 | POSIX locale corresponding to each format specifier. | ||
160 | |||
161 | Format Specifier Default Header Format Specifier Default Header | ||
162 | args COMMAND ppid PPID | ||
163 | comm COMMAND rgroup RGROUP | ||
164 | etime ELAPSED ruser RUSER | ||
165 | group GROUP time TIME | ||
166 | nice NI tty TT | ||
167 | pcpu %CPU user USER | ||
168 | pgid PGID vsz VSZ | ||
169 | pid PID | ||
170 | |||
171 | There is no special quoting mechanism for header text. The header text | ||
172 | is the rest of the argument. If multiple header changes are needed, | ||
173 | multiple -o options can be used, such as: | ||
174 | |||
175 | ps -o "user=User Name" -o pid=Process\ ID | ||