node-os-utils 1.3.7 → 2.0.1-beta.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (220) hide show
  1. package/README.md +1113 -237
  2. package/dist/.tsbuildinfo +1 -0
  3. package/dist/package.json +99 -0
  4. package/dist/src/adapters/adapter-factory.d.ts +87 -0
  5. package/dist/src/adapters/adapter-factory.d.ts.map +1 -0
  6. package/dist/src/adapters/adapter-factory.js +272 -0
  7. package/dist/src/adapters/adapter-factory.js.map +1 -0
  8. package/dist/src/adapters/linux-adapter.d.ts +199 -0
  9. package/dist/src/adapters/linux-adapter.d.ts.map +1 -0
  10. package/dist/src/adapters/linux-adapter.js +1308 -0
  11. package/dist/src/adapters/linux-adapter.js.map +1 -0
  12. package/dist/src/adapters/macos-adapter.d.ts +232 -0
  13. package/dist/src/adapters/macos-adapter.d.ts.map +1 -0
  14. package/dist/src/adapters/macos-adapter.js +1144 -0
  15. package/dist/src/adapters/macos-adapter.js.map +1 -0
  16. package/dist/src/adapters/windows-adapter.d.ts +124 -0
  17. package/dist/src/adapters/windows-adapter.d.ts.map +1 -0
  18. package/dist/src/adapters/windows-adapter.js +601 -0
  19. package/dist/src/adapters/windows-adapter.js.map +1 -0
  20. package/dist/src/core/base-monitor.d.ts +107 -0
  21. package/dist/src/core/base-monitor.d.ts.map +1 -0
  22. package/dist/src/core/base-monitor.js +312 -0
  23. package/dist/src/core/base-monitor.js.map +1 -0
  24. package/dist/src/core/cache-manager.d.ts +157 -0
  25. package/dist/src/core/cache-manager.d.ts.map +1 -0
  26. package/dist/src/core/cache-manager.js +315 -0
  27. package/dist/src/core/cache-manager.js.map +1 -0
  28. package/dist/src/core/platform-adapter.d.ts +197 -0
  29. package/dist/src/core/platform-adapter.d.ts.map +1 -0
  30. package/dist/src/core/platform-adapter.js +244 -0
  31. package/dist/src/core/platform-adapter.js.map +1 -0
  32. package/dist/src/index.d.ts +205 -0
  33. package/dist/src/index.d.ts.map +1 -0
  34. package/dist/src/index.js +315 -0
  35. package/dist/src/index.js.map +1 -0
  36. package/dist/src/monitors/cpu-monitor.d.ts +139 -0
  37. package/dist/src/monitors/cpu-monitor.d.ts.map +1 -0
  38. package/dist/src/monitors/cpu-monitor.js +433 -0
  39. package/dist/src/monitors/cpu-monitor.js.map +1 -0
  40. package/dist/src/monitors/disk-monitor.d.ts +136 -0
  41. package/dist/src/monitors/disk-monitor.d.ts.map +1 -0
  42. package/dist/src/monitors/disk-monitor.js +465 -0
  43. package/dist/src/monitors/disk-monitor.js.map +1 -0
  44. package/dist/src/monitors/memory-monitor.d.ts +136 -0
  45. package/dist/src/monitors/memory-monitor.d.ts.map +1 -0
  46. package/dist/src/monitors/memory-monitor.js +443 -0
  47. package/dist/src/monitors/memory-monitor.js.map +1 -0
  48. package/dist/src/monitors/network-monitor.d.ts +166 -0
  49. package/dist/src/monitors/network-monitor.d.ts.map +1 -0
  50. package/dist/src/monitors/network-monitor.js +586 -0
  51. package/dist/src/monitors/network-monitor.js.map +1 -0
  52. package/dist/src/monitors/process-monitor.d.ts +142 -0
  53. package/dist/src/monitors/process-monitor.d.ts.map +1 -0
  54. package/dist/src/monitors/process-monitor.js +460 -0
  55. package/dist/src/monitors/process-monitor.js.map +1 -0
  56. package/dist/src/monitors/system-monitor.d.ts +173 -0
  57. package/dist/src/monitors/system-monitor.d.ts.map +1 -0
  58. package/dist/src/monitors/system-monitor.js +592 -0
  59. package/dist/src/monitors/system-monitor.js.map +1 -0
  60. package/dist/src/types/common.d.ts +135 -0
  61. package/dist/src/types/common.d.ts.map +1 -0
  62. package/dist/src/types/common.js +141 -0
  63. package/dist/src/types/common.js.map +1 -0
  64. package/dist/src/types/config.d.ts +288 -0
  65. package/dist/src/types/config.d.ts.map +1 -0
  66. package/dist/src/types/config.js +3 -0
  67. package/dist/src/types/config.js.map +1 -0
  68. package/dist/src/types/errors.d.ts +40 -0
  69. package/dist/src/types/errors.d.ts.map +1 -0
  70. package/dist/src/types/errors.js +67 -0
  71. package/dist/src/types/errors.js.map +1 -0
  72. package/dist/src/types/index.d.ts +16 -0
  73. package/dist/src/types/index.d.ts.map +1 -0
  74. package/dist/src/types/index.js +36 -0
  75. package/dist/src/types/index.js.map +1 -0
  76. package/dist/src/types/monitors.d.ts +623 -0
  77. package/dist/src/types/monitors.d.ts.map +1 -0
  78. package/dist/src/types/monitors.js +3 -0
  79. package/dist/src/types/monitors.js.map +1 -0
  80. package/dist/src/types/platform.d.ts +435 -0
  81. package/dist/src/types/platform.d.ts.map +1 -0
  82. package/dist/src/types/platform.js +3 -0
  83. package/dist/src/types/platform.js.map +1 -0
  84. package/dist/src/utils/command-executor.d.ts +58 -0
  85. package/dist/src/utils/command-executor.d.ts.map +1 -0
  86. package/dist/src/utils/command-executor.js +321 -0
  87. package/dist/src/utils/command-executor.js.map +1 -0
  88. package/dist/test/config/test-config.d.ts +301 -0
  89. package/dist/test/config/test-config.d.ts.map +1 -0
  90. package/dist/test/config/test-config.js +235 -0
  91. package/dist/test/config/test-config.js.map +1 -0
  92. package/dist/test/platform/linux.test.d.ts +6 -0
  93. package/dist/test/platform/linux.test.d.ts.map +1 -0
  94. package/dist/test/platform/linux.test.js +307 -0
  95. package/dist/test/platform/linux.test.js.map +1 -0
  96. package/dist/test/platform/macos.test.d.ts +6 -0
  97. package/dist/test/platform/macos.test.d.ts.map +1 -0
  98. package/dist/test/platform/macos.test.js +276 -0
  99. package/dist/test/platform/macos.test.js.map +1 -0
  100. package/dist/test/platform/windows.test.d.ts +6 -0
  101. package/dist/test/platform/windows.test.d.ts.map +1 -0
  102. package/dist/test/platform/windows.test.js +320 -0
  103. package/dist/test/platform/windows.test.js.map +1 -0
  104. package/dist/test/unit/adapters/adapter-factory.test.d.ts +2 -0
  105. package/dist/test/unit/adapters/adapter-factory.test.d.ts.map +1 -0
  106. package/dist/test/unit/adapters/adapter-factory.test.js +147 -0
  107. package/dist/test/unit/adapters/adapter-factory.test.js.map +1 -0
  108. package/dist/test/unit/adapters/linux-adapter.test.d.ts +2 -0
  109. package/dist/test/unit/adapters/linux-adapter.test.d.ts.map +1 -0
  110. package/dist/test/unit/adapters/linux-adapter.test.js +191 -0
  111. package/dist/test/unit/adapters/linux-adapter.test.js.map +1 -0
  112. package/dist/test/unit/adapters/macos-adapter.test.d.ts +2 -0
  113. package/dist/test/unit/adapters/macos-adapter.test.d.ts.map +1 -0
  114. package/dist/test/unit/adapters/macos-adapter.test.js +224 -0
  115. package/dist/test/unit/adapters/macos-adapter.test.js.map +1 -0
  116. package/dist/test/unit/adapters/windows-adapter.test.d.ts +2 -0
  117. package/dist/test/unit/adapters/windows-adapter.test.d.ts.map +1 -0
  118. package/dist/test/unit/adapters/windows-adapter.test.js +41 -0
  119. package/dist/test/unit/adapters/windows-adapter.test.js.map +1 -0
  120. package/dist/test/unit/core/base-monitor.test.d.ts +2 -0
  121. package/dist/test/unit/core/base-monitor.test.d.ts.map +1 -0
  122. package/dist/test/unit/core/base-monitor.test.js +157 -0
  123. package/dist/test/unit/core/base-monitor.test.js.map +1 -0
  124. package/dist/test/unit/core/cache-manager.test.d.ts +6 -0
  125. package/dist/test/unit/core/cache-manager.test.d.ts.map +1 -0
  126. package/dist/test/unit/core/cache-manager.test.js +127 -0
  127. package/dist/test/unit/core/cache-manager.test.js.map +1 -0
  128. package/dist/test/unit/core/platform-adapter.test.d.ts +2 -0
  129. package/dist/test/unit/core/platform-adapter.test.d.ts.map +1 -0
  130. package/dist/test/unit/core/platform-adapter.test.js +186 -0
  131. package/dist/test/unit/core/platform-adapter.test.js.map +1 -0
  132. package/dist/test/unit/index.test.d.ts +2 -0
  133. package/dist/test/unit/index.test.d.ts.map +1 -0
  134. package/dist/test/unit/index.test.js +183 -0
  135. package/dist/test/unit/index.test.js.map +1 -0
  136. package/dist/test/unit/monitors/cpu-monitor.test.d.ts +2 -0
  137. package/dist/test/unit/monitors/cpu-monitor.test.d.ts.map +1 -0
  138. package/dist/test/unit/monitors/cpu-monitor.test.js +166 -0
  139. package/dist/test/unit/monitors/cpu-monitor.test.js.map +1 -0
  140. package/dist/test/unit/monitors/disk-monitor.test.d.ts +2 -0
  141. package/dist/test/unit/monitors/disk-monitor.test.d.ts.map +1 -0
  142. package/dist/test/unit/monitors/disk-monitor.test.js +46 -0
  143. package/dist/test/unit/monitors/disk-monitor.test.js.map +1 -0
  144. package/dist/test/unit/monitors/memory-monitor.test.d.ts +2 -0
  145. package/dist/test/unit/monitors/memory-monitor.test.d.ts.map +1 -0
  146. package/dist/test/unit/monitors/memory-monitor.test.js +142 -0
  147. package/dist/test/unit/monitors/memory-monitor.test.js.map +1 -0
  148. package/dist/test/unit/monitors/network-monitor.test.d.ts +2 -0
  149. package/dist/test/unit/monitors/network-monitor.test.d.ts.map +1 -0
  150. package/dist/test/unit/monitors/network-monitor.test.js +22 -0
  151. package/dist/test/unit/monitors/network-monitor.test.js.map +1 -0
  152. package/dist/test/unit/monitors/process-monitor.test.d.ts +2 -0
  153. package/dist/test/unit/monitors/process-monitor.test.d.ts.map +1 -0
  154. package/dist/test/unit/monitors/process-monitor.test.js +165 -0
  155. package/dist/test/unit/monitors/process-monitor.test.js.map +1 -0
  156. package/dist/test/unit/monitors/system-monitor-macos.test.d.ts +2 -0
  157. package/dist/test/unit/monitors/system-monitor-macos.test.d.ts.map +1 -0
  158. package/dist/test/unit/monitors/system-monitor-macos.test.js +115 -0
  159. package/dist/test/unit/monitors/system-monitor-macos.test.js.map +1 -0
  160. package/dist/test/unit/monitors/system-monitor.test.d.ts +2 -0
  161. package/dist/test/unit/monitors/system-monitor.test.d.ts.map +1 -0
  162. package/dist/test/unit/monitors/system-monitor.test.js +70 -0
  163. package/dist/test/unit/monitors/system-monitor.test.js.map +1 -0
  164. package/dist/test/unit/types/common.test.d.ts +6 -0
  165. package/dist/test/unit/types/common.test.d.ts.map +1 -0
  166. package/dist/test/unit/types/common.test.js +139 -0
  167. package/dist/test/unit/types/common.test.js.map +1 -0
  168. package/dist/test/unit/types/config.test.d.ts +2 -0
  169. package/dist/test/unit/types/config.test.d.ts.map +1 -0
  170. package/dist/test/unit/types/config.test.js +9 -0
  171. package/dist/test/unit/types/config.test.js.map +1 -0
  172. package/dist/test/unit/types/errors.test.d.ts +6 -0
  173. package/dist/test/unit/types/errors.test.d.ts.map +1 -0
  174. package/dist/test/unit/types/errors.test.js +184 -0
  175. package/dist/test/unit/types/errors.test.js.map +1 -0
  176. package/dist/test/unit/types/index.test.d.ts +2 -0
  177. package/dist/test/unit/types/index.test.d.ts.map +1 -0
  178. package/dist/test/unit/types/index.test.js +39 -0
  179. package/dist/test/unit/types/index.test.js.map +1 -0
  180. package/dist/test/unit/types/monitors.test.d.ts +2 -0
  181. package/dist/test/unit/types/monitors.test.d.ts.map +1 -0
  182. package/dist/test/unit/types/monitors.test.js +9 -0
  183. package/dist/test/unit/types/monitors.test.js.map +1 -0
  184. package/dist/test/unit/types/platform.test.d.ts +2 -0
  185. package/dist/test/unit/types/platform.test.d.ts.map +1 -0
  186. package/dist/test/unit/types/platform.test.js +9 -0
  187. package/dist/test/unit/types/platform.test.js.map +1 -0
  188. package/dist/test/unit/utils/command-executor.test.d.ts +6 -0
  189. package/dist/test/unit/utils/command-executor.test.d.ts.map +1 -0
  190. package/dist/test/unit/utils/command-executor.test.js +153 -0
  191. package/dist/test/unit/utils/command-executor.test.js.map +1 -0
  192. package/dist/test/unit/utils/platform-specific.test.d.ts +2 -0
  193. package/dist/test/unit/utils/platform-specific.test.d.ts.map +1 -0
  194. package/dist/test/unit/utils/platform-specific.test.js +32 -0
  195. package/dist/test/unit/utils/platform-specific.test.js.map +1 -0
  196. package/dist/test/utils/platform-specific.d.ts +139 -0
  197. package/dist/test/utils/platform-specific.d.ts.map +1 -0
  198. package/dist/test/utils/platform-specific.js +306 -0
  199. package/dist/test/utils/platform-specific.js.map +1 -0
  200. package/dist/test/utils/test-base.d.ts +157 -0
  201. package/dist/test/utils/test-base.d.ts.map +1 -0
  202. package/dist/test/utils/test-base.js +316 -0
  203. package/dist/test/utils/test-base.js.map +1 -0
  204. package/package.json +78 -18
  205. package/.travis.yml +0 -7
  206. package/index.js +0 -17
  207. package/lib/bucket.js +0 -14
  208. package/lib/cpu.js +0 -94
  209. package/lib/drive.js +0 -113
  210. package/lib/exec.js +0 -28
  211. package/lib/mem.js +0 -176
  212. package/lib/netstat.js +0 -182
  213. package/lib/openfiles.js +0 -25
  214. package/lib/os.js +0 -148
  215. package/lib/osCmd.js +0 -20
  216. package/lib/proc.js +0 -38
  217. package/lib/users.js +0 -18
  218. package/test/test.js +0 -55
  219. package/util/co.js +0 -237
  220. package/util/index.js +0 -12
@@ -0,0 +1,435 @@
1
+ import { ExecuteOptions } from './config';
2
+ /**
3
+ * 命令执行结果
4
+ */
5
+ export interface CommandResult {
6
+ /**
7
+ * 标准输出
8
+ */
9
+ stdout: string;
10
+ /**
11
+ * 标准错误输出
12
+ */
13
+ stderr: string;
14
+ /**
15
+ * 退出代码
16
+ */
17
+ exitCode: number;
18
+ /**
19
+ * 执行平台
20
+ */
21
+ platform: string;
22
+ /**
23
+ * 执行时间(毫秒)
24
+ */
25
+ executionTime: number;
26
+ /**
27
+ * 命令字符串
28
+ */
29
+ command: string;
30
+ }
31
+ /**
32
+ * 平台适配器接口
33
+ */
34
+ export interface PlatformAdapter {
35
+ /**
36
+ * 获取平台名称
37
+ */
38
+ getPlatform(): string;
39
+ /**
40
+ * 检查是否支持特定功能
41
+ */
42
+ isSupported(feature: string): boolean;
43
+ /**
44
+ * 执行系统命令
45
+ */
46
+ executeCommand(command: string, options?: ExecuteOptions): Promise<CommandResult>;
47
+ /**
48
+ * 读取文件内容
49
+ */
50
+ readFile(path: string): Promise<string>;
51
+ /**
52
+ * 检查文件是否存在
53
+ */
54
+ fileExists(path: string): Promise<boolean>;
55
+ /**
56
+ * 获取 CPU 信息
57
+ */
58
+ getCPUInfo(): Promise<any>;
59
+ /**
60
+ * 获取 CPU 使用率
61
+ */
62
+ getCPUUsage(): Promise<any>;
63
+ /**
64
+ * 获取 CPU 温度
65
+ */
66
+ getCPUTemperature(): Promise<any>;
67
+ /**
68
+ * 获取内存信息
69
+ */
70
+ getMemoryInfo(): Promise<any>;
71
+ /**
72
+ * 获取内存使用情况
73
+ */
74
+ getMemoryUsage(): Promise<any>;
75
+ /**
76
+ * 获取磁盘信息
77
+ */
78
+ getDiskInfo(): Promise<any>;
79
+ /**
80
+ * 获取磁盘 I/O 统计
81
+ */
82
+ getDiskIO(): Promise<any>;
83
+ /**
84
+ * 获取网络接口列表
85
+ */
86
+ getNetworkInterfaces(): Promise<any>;
87
+ /**
88
+ * 获取网络统计信息
89
+ */
90
+ getNetworkStats(): Promise<any>;
91
+ /**
92
+ * 获取进程列表
93
+ */
94
+ getProcesses(): Promise<any>;
95
+ /**
96
+ * 获取特定进程信息
97
+ */
98
+ getProcessInfo(pid: number): Promise<any>;
99
+ /**
100
+ * 获取系统信息
101
+ */
102
+ getSystemInfo(): Promise<any>;
103
+ /**
104
+ * 获取系统负载
105
+ */
106
+ getSystemLoad(): Promise<any>;
107
+ /**
108
+ * 获取磁盘使用情况
109
+ */
110
+ getDiskUsage(): Promise<any>;
111
+ /**
112
+ * 获取磁盘统计
113
+ */
114
+ getDiskStats(): Promise<any>;
115
+ /**
116
+ * 获取挂载点
117
+ */
118
+ getMounts(): Promise<any>;
119
+ /**
120
+ * 获取文件系统
121
+ */
122
+ getFileSystems(): Promise<any>;
123
+ /**
124
+ * 获取网络连接
125
+ */
126
+ getNetworkConnections(): Promise<any>;
127
+ /**
128
+ * 获取默认网关
129
+ */
130
+ getDefaultGateway(): Promise<any>;
131
+ /**
132
+ * 获取进程列表
133
+ */
134
+ getProcessList(): Promise<any>;
135
+ /**
136
+ * 杀死进程
137
+ */
138
+ killProcess(pid: number, signal?: string): Promise<boolean>;
139
+ /**
140
+ * 获取进程打开文件
141
+ */
142
+ getProcessOpenFiles(pid: number): Promise<string[]>;
143
+ /**
144
+ * 获取进程环境变量
145
+ */
146
+ getProcessEnvironment(pid: number): Promise<Record<string, string>>;
147
+ /**
148
+ * 获取系统运行时间
149
+ */
150
+ getSystemUptime(): Promise<any>;
151
+ /**
152
+ * 获取系统用户
153
+ */
154
+ getSystemUsers(): Promise<any>;
155
+ /**
156
+ * 获取系统服务
157
+ */
158
+ getSystemServices(): Promise<any>;
159
+ /**
160
+ * 获取支持的功能列表
161
+ */
162
+ getSupportedFeatures(): SupportedFeatures;
163
+ }
164
+ /**
165
+ * Linux 特定命令
166
+ */
167
+ export interface LinuxCommands {
168
+ /**
169
+ * CPU 信息命令
170
+ */
171
+ cpuInfo: string;
172
+ /**
173
+ * CPU 使用率命令
174
+ */
175
+ cpuUsage: string;
176
+ /**
177
+ * 内存信息命令
178
+ */
179
+ memoryInfo: string;
180
+ /**
181
+ * 磁盘信息命令
182
+ */
183
+ diskInfo: string;
184
+ /**
185
+ * 磁盘 I/O 命令
186
+ */
187
+ diskIO: string;
188
+ /**
189
+ * 网络接口命令
190
+ */
191
+ networkInterfaces: string;
192
+ /**
193
+ * 网络统计命令
194
+ */
195
+ networkStats: string;
196
+ /**
197
+ * 进程列表命令
198
+ */
199
+ processes: string;
200
+ /**
201
+ * 系统信息命令
202
+ */
203
+ systemInfo: string;
204
+ /**
205
+ * 负载平均值命令
206
+ */
207
+ loadAverage: string;
208
+ /**
209
+ * 温度信息命令
210
+ */
211
+ temperature: string;
212
+ }
213
+ /**
214
+ * macOS 特定命令
215
+ */
216
+ export interface MacOSCommands {
217
+ /**
218
+ * CPU 信息命令
219
+ */
220
+ cpuInfo: string;
221
+ /**
222
+ * CPU 使用率命令
223
+ */
224
+ cpuUsage: string;
225
+ /**
226
+ * 内存信息命令
227
+ */
228
+ memoryInfo: string;
229
+ /**
230
+ * 磁盘信息命令
231
+ */
232
+ diskInfo: string;
233
+ /**
234
+ * 磁盘 I/O 命令
235
+ */
236
+ diskIO: string;
237
+ /**
238
+ * 网络接口命令
239
+ */
240
+ networkInterfaces: string;
241
+ /**
242
+ * 网络统计命令
243
+ */
244
+ networkStats: string;
245
+ /**
246
+ * 进程列表命令
247
+ */
248
+ processes: string;
249
+ /**
250
+ * 系统信息命令
251
+ */
252
+ systemInfo: string;
253
+ /**
254
+ * 负载平均值命令
255
+ */
256
+ loadAverage: string;
257
+ /**
258
+ * 温度信息命令
259
+ */
260
+ temperature: string;
261
+ /**
262
+ * 虚拟内存统计命令
263
+ */
264
+ vmStat: string;
265
+ /**
266
+ * 系统配置命令
267
+ */
268
+ sysctl: string;
269
+ }
270
+ /**
271
+ * Windows 特定命令
272
+ */
273
+ export interface WindowsCommands {
274
+ /**
275
+ * CPU 信息命令
276
+ */
277
+ cpuInfo: string;
278
+ /**
279
+ * CPU 使用率命令
280
+ */
281
+ cpuUsage: string;
282
+ /**
283
+ * 内存信息命令
284
+ */
285
+ memoryInfo: string;
286
+ /**
287
+ * 磁盘信息命令
288
+ */
289
+ diskInfo: string;
290
+ /**
291
+ * 磁盘 I/O 命令
292
+ */
293
+ diskIO: string;
294
+ /**
295
+ * 网络接口命令
296
+ */
297
+ networkInterfaces: string;
298
+ /**
299
+ * 网络统计命令
300
+ */
301
+ networkStats: string;
302
+ /**
303
+ * 进程列表命令
304
+ */
305
+ processes: string;
306
+ /**
307
+ * 系统信息命令
308
+ */
309
+ systemInfo: string;
310
+ /**
311
+ * 负载平均值命令
312
+ */
313
+ loadAverage: string;
314
+ /**
315
+ * 温度信息命令
316
+ */
317
+ temperature: string;
318
+ }
319
+ /**
320
+ * 平台特定的文件路径
321
+ */
322
+ export interface PlatformPaths {
323
+ /**
324
+ * CPU 信息文件路径
325
+ */
326
+ cpuInfo?: string;
327
+ /**
328
+ * 内存信息文件路径
329
+ */
330
+ memInfo?: string;
331
+ /**
332
+ * 磁盘统计文件路径
333
+ */
334
+ diskStats?: string;
335
+ /**
336
+ * 网络统计文件路径
337
+ */
338
+ netStats?: string;
339
+ /**
340
+ * 负载平均值文件路径
341
+ */
342
+ loadavg?: string;
343
+ /**
344
+ * 运行时间文件路径
345
+ */
346
+ uptime?: string;
347
+ /**
348
+ * 进程目录路径
349
+ */
350
+ procDir?: string;
351
+ /**
352
+ * 系统目录路径
353
+ */
354
+ sysDir?: string;
355
+ /**
356
+ * 温度传感器路径
357
+ */
358
+ thermalDir?: string;
359
+ }
360
+ /**
361
+ * 支持的功能列表
362
+ */
363
+ export interface SupportedFeatures {
364
+ /**
365
+ * CPU 监控功能
366
+ */
367
+ cpu: {
368
+ info: boolean;
369
+ usage: boolean;
370
+ temperature: boolean;
371
+ frequency: boolean;
372
+ cache: boolean;
373
+ perCore: boolean;
374
+ cores: boolean;
375
+ };
376
+ /**
377
+ * 内存监控功能
378
+ */
379
+ memory: {
380
+ info: boolean;
381
+ usage: boolean;
382
+ swap: boolean;
383
+ pressure: boolean;
384
+ detailed: boolean;
385
+ virtual: boolean;
386
+ };
387
+ /**
388
+ * 磁盘监控功能
389
+ */
390
+ disk: {
391
+ info: boolean;
392
+ io: boolean;
393
+ health: boolean;
394
+ smart: boolean;
395
+ filesystem: boolean;
396
+ usage: boolean;
397
+ stats: boolean;
398
+ mounts: boolean;
399
+ filesystems: boolean;
400
+ };
401
+ /**
402
+ * 网络监控功能
403
+ */
404
+ network: {
405
+ interfaces: boolean;
406
+ stats: boolean;
407
+ connections: boolean;
408
+ bandwidth: boolean;
409
+ gateway: boolean;
410
+ };
411
+ /**
412
+ * 进程监控功能
413
+ */
414
+ process: {
415
+ list: boolean;
416
+ details: boolean;
417
+ tree: boolean;
418
+ monitor: boolean;
419
+ info: boolean;
420
+ kill: boolean;
421
+ openFiles: boolean;
422
+ environment: boolean;
423
+ };
424
+ /**
425
+ * 系统监控功能
426
+ */
427
+ system: {
428
+ info: boolean;
429
+ load: boolean;
430
+ uptime: boolean;
431
+ users: boolean;
432
+ services: boolean;
433
+ };
434
+ }
435
+ //# sourceMappingURL=platform.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"platform.d.ts","sourceRoot":"","sources":["../../../src/types/platform.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=platform.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"platform.js","sourceRoot":"","sources":["../../../src/types/platform.ts"],"names":[],"mappings":""}
@@ -0,0 +1,58 @@
1
+ import { CommandResult } from '../types/platform';
2
+ import { ExecuteOptions } from '../types/config';
3
+ /**
4
+ * 命令执行器
5
+ *
6
+ * 负责在不同平台上执行系统命令,提供统一的接口和错误处理
7
+ */
8
+ export declare class CommandExecutor {
9
+ private platform;
10
+ private defaultOptions;
11
+ constructor(platform: string, defaultOptions?: ExecuteOptions);
12
+ /**
13
+ * 执行命令并返回结果
14
+ */
15
+ execute(command: string, options?: ExecuteOptions): Promise<CommandResult>;
16
+ /**
17
+ * 执行多个命令
18
+ */
19
+ executeMultiple(commands: string[], options?: ExecuteOptions): Promise<CommandResult[]>;
20
+ /**
21
+ * 并发执行多个命令
22
+ */
23
+ executeConcurrent(commands: string[], options?: ExecuteOptions): Promise<CommandResult[]>;
24
+ /**
25
+ * 执行命令并流式处理输出
26
+ */
27
+ executeStream(command: string, onData: (data: string, isError: boolean) => void, options?: ExecuteOptions): Promise<CommandResult>;
28
+ /**
29
+ * 检查命令是否可用
30
+ */
31
+ isCommandAvailable(command: string): Promise<boolean>;
32
+ /**
33
+ * 获取命令的版本信息
34
+ */
35
+ getCommandVersion(command: string, versionFlag?: string): Promise<string>;
36
+ /**
37
+ * 设置默认选项
38
+ */
39
+ setDefaultOptions(options: Partial<ExecuteOptions>): void;
40
+ /**
41
+ * 获取默认选项
42
+ */
43
+ getDefaultOptions(): ExecuteOptions;
44
+ /**
45
+ * 转义命令参数
46
+ */
47
+ escapeArgument(arg: string): string;
48
+ /**
49
+ * 构建安全的命令字符串
50
+ */
51
+ buildCommand(command: string, args?: string[]): string;
52
+ private tokenizeCommand;
53
+ /**
54
+ * 带超时执行命令
55
+ */
56
+ private executeWithTimeout;
57
+ }
58
+ //# sourceMappingURL=command-executor.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"command-executor.d.ts","sourceRoot":"","sources":["../../../src/utils/command-executor.ts"],"names":[],"mappings":"AAEA,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAKjD;;;;GAIG;AACH,qBAAa,eAAe;IAC1B,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,cAAc,CAAiB;gBAE3B,QAAQ,EAAE,MAAM,EAAE,cAAc,GAAE,cAAmB;IAiBjE;;OAEG;IACG,OAAO,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,GAAE,cAAmB,GAAG,OAAO,CAAC,aAAa,CAAC;IA6GpF;;OAEG;IACG,eAAe,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,OAAO,GAAE,cAAmB,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;IAwBjG;;OAEG;IACG,iBAAiB,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE,OAAO,GAAE,cAAmB,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;IAkBnG;;OAEG;IACG,aAAa,CACjB,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,CAAC,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,KAAK,IAAI,EAChD,OAAO,GAAE,cAAmB,GAC3B,OAAO,CAAC,aAAa,CAAC;IAuFzB;;OAEG;IACG,kBAAkB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,OAAO,CAAC;IAa3D;;OAEG;IACG,iBAAiB,CAAC,OAAO,EAAE,MAAM,EAAE,WAAW,GAAE,MAAoB,GAAG,OAAO,CAAC,MAAM,CAAC;IAc5F;;OAEG;IACH,iBAAiB,CAAC,OAAO,EAAE,OAAO,CAAC,cAAc,CAAC,GAAG,IAAI;IAIzD;;OAEG;IACH,iBAAiB,IAAI,cAAc;IAInC;;OAEG;IACH,cAAc,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM;IAUnC;;OAEG;IACH,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,GAAE,MAAM,EAAO,GAAG,MAAM;IAK1D,OAAO,CAAC,eAAe;IAmBvB;;OAEG;YACW,kBAAkB;CA6BjC"}