@ecmaos/coreutils 0.2.0 → 0.3.0

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 (123) hide show
  1. package/.turbo/turbo-build.log +1 -1
  2. package/CHANGELOG.md +25 -0
  3. package/LICENSE +1 -1
  4. package/dist/commands/cal.js +2 -2
  5. package/dist/commands/cal.js.map +1 -1
  6. package/dist/commands/cat.js +2 -2
  7. package/dist/commands/cd.js +2 -2
  8. package/dist/commands/chmod.d.ts.map +1 -1
  9. package/dist/commands/chmod.js +16 -11
  10. package/dist/commands/chmod.js.map +1 -1
  11. package/dist/commands/cp.js +2 -2
  12. package/dist/commands/cp.js.map +1 -1
  13. package/dist/commands/date.js +2 -2
  14. package/dist/commands/date.js.map +1 -1
  15. package/dist/commands/echo.js +2 -2
  16. package/dist/commands/echo.js.map +1 -1
  17. package/dist/commands/false.js +2 -2
  18. package/dist/commands/fetch.d.ts +4 -0
  19. package/dist/commands/fetch.d.ts.map +1 -0
  20. package/dist/commands/fetch.js +210 -0
  21. package/dist/commands/fetch.js.map +1 -0
  22. package/dist/commands/format.d.ts +4 -0
  23. package/dist/commands/format.d.ts.map +1 -0
  24. package/dist/commands/format.js +178 -0
  25. package/dist/commands/format.js.map +1 -0
  26. package/dist/commands/hash.d.ts +4 -0
  27. package/dist/commands/hash.d.ts.map +1 -0
  28. package/dist/commands/hash.js +200 -0
  29. package/dist/commands/hash.js.map +1 -0
  30. package/dist/commands/head.js +2 -2
  31. package/dist/commands/id.js +2 -2
  32. package/dist/commands/id.js.map +1 -1
  33. package/dist/commands/less.d.ts.map +1 -1
  34. package/dist/commands/less.js +53 -2
  35. package/dist/commands/less.js.map +1 -1
  36. package/dist/commands/ls.d.ts.map +1 -1
  37. package/dist/commands/ls.js +120 -97
  38. package/dist/commands/ls.js.map +1 -1
  39. package/dist/commands/man.d.ts +4 -0
  40. package/dist/commands/man.d.ts.map +1 -0
  41. package/dist/commands/man.js +554 -0
  42. package/dist/commands/man.js.map +1 -0
  43. package/dist/commands/mkdir.js +2 -2
  44. package/dist/commands/mkdir.js.map +1 -1
  45. package/dist/commands/mktemp.d.ts +4 -0
  46. package/dist/commands/mktemp.d.ts.map +1 -0
  47. package/dist/commands/mktemp.js +229 -0
  48. package/dist/commands/mktemp.js.map +1 -0
  49. package/dist/commands/nc.js +2 -2
  50. package/dist/commands/nc.js.map +1 -1
  51. package/dist/commands/passkey.js +3 -3
  52. package/dist/commands/pwd.js +2 -2
  53. package/dist/commands/pwd.js.map +1 -1
  54. package/dist/commands/rm.d.ts.map +1 -1
  55. package/dist/commands/rm.js +57 -12
  56. package/dist/commands/rm.js.map +1 -1
  57. package/dist/commands/rmdir.js +2 -2
  58. package/dist/commands/rmdir.js.map +1 -1
  59. package/dist/commands/sockets.js +1 -1
  60. package/dist/commands/stat.d.ts.map +1 -1
  61. package/dist/commands/stat.js +37 -15
  62. package/dist/commands/stat.js.map +1 -1
  63. package/dist/commands/tail.js +2 -2
  64. package/dist/commands/tar.d.ts +4 -0
  65. package/dist/commands/tar.d.ts.map +1 -0
  66. package/dist/commands/tar.js +693 -0
  67. package/dist/commands/tar.js.map +1 -0
  68. package/dist/commands/touch.js +2 -2
  69. package/dist/commands/touch.js.map +1 -1
  70. package/dist/commands/true.js +2 -2
  71. package/dist/commands/unzip.d.ts +4 -0
  72. package/dist/commands/unzip.d.ts.map +1 -0
  73. package/dist/commands/unzip.js +443 -0
  74. package/dist/commands/unzip.js.map +1 -0
  75. package/dist/commands/user.d.ts +4 -0
  76. package/dist/commands/user.d.ts.map +1 -0
  77. package/dist/commands/user.js +427 -0
  78. package/dist/commands/user.js.map +1 -0
  79. package/dist/commands/whoami.js +2 -2
  80. package/dist/commands/whoami.js.map +1 -1
  81. package/dist/commands/zip.d.ts +4 -0
  82. package/dist/commands/zip.d.ts.map +1 -0
  83. package/dist/commands/zip.js +264 -0
  84. package/dist/commands/zip.js.map +1 -0
  85. package/dist/index.d.ts +9 -0
  86. package/dist/index.d.ts.map +1 -1
  87. package/dist/index.js +28 -1
  88. package/dist/index.js.map +1 -1
  89. package/package.json +6 -4
  90. package/src/commands/cal.ts +2 -2
  91. package/src/commands/cat.ts +2 -2
  92. package/src/commands/cd.ts +2 -2
  93. package/src/commands/chmod.ts +19 -11
  94. package/src/commands/cp.ts +2 -2
  95. package/src/commands/date.ts +2 -2
  96. package/src/commands/echo.ts +2 -2
  97. package/src/commands/false.ts +2 -2
  98. package/src/commands/fetch.ts +205 -0
  99. package/src/commands/format.ts +204 -0
  100. package/src/commands/hash.ts +215 -0
  101. package/src/commands/head.ts +2 -2
  102. package/src/commands/id.ts +2 -2
  103. package/src/commands/less.ts +50 -2
  104. package/src/commands/ls.ts +131 -91
  105. package/src/commands/man.ts +643 -0
  106. package/src/commands/mkdir.ts +2 -2
  107. package/src/commands/mktemp.ts +235 -0
  108. package/src/commands/nc.ts +2 -2
  109. package/src/commands/passkey.ts +3 -3
  110. package/src/commands/pwd.ts +2 -2
  111. package/src/commands/rm.ts +54 -12
  112. package/src/commands/rmdir.ts +2 -2
  113. package/src/commands/sockets.ts +1 -1
  114. package/src/commands/stat.ts +44 -16
  115. package/src/commands/tail.ts +2 -2
  116. package/src/commands/tar.ts +737 -0
  117. package/src/commands/touch.ts +2 -2
  118. package/src/commands/true.ts +2 -2
  119. package/src/commands/unzip.ts +517 -0
  120. package/src/commands/user.ts +436 -0
  121. package/src/commands/whoami.ts +2 -2
  122. package/src/commands/zip.ts +319 -0
  123. package/src/index.ts +28 -1
@@ -0,0 +1,229 @@
1
+ import path from 'path';
2
+ import { TerminalCommand } from '../shared/terminal-command.js';
3
+ import { writelnStdout, writelnStderr } from '../shared/helpers.js';
4
+ /**
5
+ * Generate random alphanumeric characters for template replacement
6
+ */
7
+ function generateRandomChars(count) {
8
+ const chars = '0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz';
9
+ let result = '';
10
+ const cryptoApi = globalThis.crypto;
11
+ if (!cryptoApi) {
12
+ throw new Error('Crypto API not available');
13
+ }
14
+ const randomValues = cryptoApi.getRandomValues(new Uint8Array(count));
15
+ for (let i = 0; i < count; i++) {
16
+ const randomValue = randomValues[i];
17
+ if (randomValue !== undefined) {
18
+ result += chars[randomValue % chars.length];
19
+ }
20
+ }
21
+ return result;
22
+ }
23
+ /**
24
+ * Replace X's in template with random characters
25
+ */
26
+ function replaceTemplate(template) {
27
+ const xCount = (template.match(/X/g) || []).length;
28
+ if (xCount === 0) {
29
+ // If no X's, append random suffix
30
+ return template + '.' + generateRandomChars(6);
31
+ }
32
+ let result = template;
33
+ const randomChars = generateRandomChars(xCount);
34
+ let charIndex = 0;
35
+ for (let i = 0; i < template.length; i++) {
36
+ if (template[i] === 'X') {
37
+ result = result.substring(0, i) + randomChars[charIndex] + result.substring(i + 1);
38
+ charIndex++;
39
+ }
40
+ }
41
+ return result;
42
+ }
43
+ function printUsage(process, terminal) {
44
+ const usage = `Usage: mktemp [OPTION]... [TEMPLATE]
45
+ Create a temporary file or directory, safely, and print its name.
46
+
47
+ -d, --directory create a directory, not a file
48
+ -q, --quiet suppress error messages
49
+ -u, --dry-run do not create anything; merely print a name (unsafe)
50
+ -p DIR, --tmpdir=DIR interpret TEMPLATE relative to DIR; if DIR is not
51
+ specified, use \$TMPDIR if set, else /tmp. With
52
+ this option, TEMPLATE must not be an absolute name;
53
+ unlike with -t, TEMPLATE may contain slashes, but
54
+ mktemp creates only the final component
55
+ -t interpret TEMPLATE relative to the directory specified by
56
+ -p, or \$TMPDIR if -p is not given; if neither is
57
+ specified, use /tmp [deprecated]
58
+ --help display this help and exit
59
+
60
+ The TEMPLATE must contain at least 3 consecutive 'X's in last component.
61
+ If TEMPLATE is not specified, use tmp.XXXXXX, and --tmpdir implies -t.
62
+
63
+ Examples:
64
+ mktemp create a temp file in /tmp
65
+ mktemp -d create a temp directory in /tmp
66
+ mktemp /tmp/file.XXXXXX create a temp file with template
67
+ mktemp -d /tmp/dir.XXXXXX create a temp directory with template`;
68
+ writelnStderr(process, terminal, usage);
69
+ }
70
+ export function createCommand(kernel, shell, terminal) {
71
+ return new TerminalCommand({
72
+ command: 'mktemp',
73
+ description: 'Create a temporary file or directory',
74
+ kernel,
75
+ shell,
76
+ terminal,
77
+ run: async (pid, argv) => {
78
+ const process = kernel.processes.get(pid);
79
+ if (!process)
80
+ return 1;
81
+ if (argv.length > 0 && (argv[0] === '--help' || argv[0] === '-h')) {
82
+ printUsage(process, terminal);
83
+ return 0;
84
+ }
85
+ let createDirectory = false;
86
+ let quiet = false;
87
+ let dryRun = false;
88
+ let tmpdir;
89
+ let useTmpdir = false;
90
+ let template;
91
+ // Parse arguments
92
+ for (let i = 0; i < argv.length; i++) {
93
+ const arg = argv[i];
94
+ if (!arg)
95
+ continue;
96
+ if (arg === '--help' || arg === '-h') {
97
+ printUsage(process, terminal);
98
+ return 0;
99
+ }
100
+ else if (arg === '-d' || arg === '--directory') {
101
+ createDirectory = true;
102
+ }
103
+ else if (arg === '-q' || arg === '--quiet') {
104
+ quiet = true;
105
+ }
106
+ else if (arg === '-u' || arg === '--dry-run') {
107
+ dryRun = true;
108
+ }
109
+ else if (arg === '-t') {
110
+ useTmpdir = true;
111
+ }
112
+ else if (arg === '-p' || arg === '--tmpdir') {
113
+ useTmpdir = true;
114
+ const dirArg = argv[i + 1];
115
+ if (dirArg && !dirArg.startsWith('-')) {
116
+ tmpdir = dirArg;
117
+ i++; // Skip the next argument as it's the directory value
118
+ }
119
+ }
120
+ else if (arg.startsWith('--tmpdir=')) {
121
+ useTmpdir = true;
122
+ const dirValue = arg.split('=')[1];
123
+ if (dirValue) {
124
+ tmpdir = dirValue;
125
+ }
126
+ }
127
+ else if (!arg.startsWith('-')) {
128
+ // Positional argument - should be the template
129
+ if (!template) {
130
+ template = arg;
131
+ }
132
+ else {
133
+ if (!quiet) {
134
+ await writelnStderr(process, terminal, `mktemp: too many arguments`);
135
+ }
136
+ return 1;
137
+ }
138
+ }
139
+ else {
140
+ if (!quiet) {
141
+ await writelnStderr(process, terminal, `mktemp: invalid option -- '${arg.replace(/^-+/, '')}'`);
142
+ await writelnStderr(process, terminal, `Try 'mktemp --help' for more information.`);
143
+ }
144
+ return 1;
145
+ }
146
+ }
147
+ // Determine the temp directory
148
+ let baseDir = '/tmp';
149
+ if (useTmpdir) {
150
+ if (tmpdir) {
151
+ baseDir = tmpdir;
152
+ }
153
+ else {
154
+ // Check TMPDIR environment variable
155
+ const envTmpdir = shell.env.get('TMPDIR');
156
+ if (envTmpdir) {
157
+ baseDir = envTmpdir;
158
+ }
159
+ }
160
+ }
161
+ // Resolve base directory
162
+ const resolvedBaseDir = path.isAbsolute(baseDir) ? baseDir : path.resolve(shell.cwd, baseDir);
163
+ // Determine template
164
+ if (!template) {
165
+ template = 'tmp.XXXXXX';
166
+ }
167
+ // If template is absolute and useTmpdir is set, that's an error
168
+ if (useTmpdir && path.isAbsolute(template)) {
169
+ if (!quiet) {
170
+ await writelnStderr(process, terminal, `mktemp: with -p/--tmpdir, TEMPLATE must not be an absolute name`);
171
+ }
172
+ return 1;
173
+ }
174
+ // Build the full path
175
+ let fullPath;
176
+ if (path.isAbsolute(template)) {
177
+ fullPath = template;
178
+ }
179
+ else {
180
+ fullPath = path.join(resolvedBaseDir, template);
181
+ }
182
+ // Check that template has at least 3 X's in the last component
183
+ const basename = path.basename(fullPath);
184
+ const xCount = (basename.match(/X/g) || []).length;
185
+ if (xCount < 3) {
186
+ if (!quiet) {
187
+ await writelnStderr(process, terminal, `mktemp: too few X's in template ${template}`);
188
+ }
189
+ return 1;
190
+ }
191
+ // Replace template with random characters
192
+ const finalPath = replaceTemplate(fullPath);
193
+ // If dry-run, just print the name
194
+ if (dryRun) {
195
+ await writelnStdout(process, terminal, finalPath);
196
+ return 0;
197
+ }
198
+ // Create the file or directory
199
+ try {
200
+ if (createDirectory) {
201
+ await shell.context.fs.promises.mkdir(finalPath, { recursive: true });
202
+ }
203
+ else {
204
+ // Create parent directory if needed
205
+ const parentDir = path.dirname(finalPath);
206
+ try {
207
+ await shell.context.fs.promises.mkdir(parentDir, { recursive: true });
208
+ }
209
+ catch {
210
+ // Parent might already exist, ignore
211
+ }
212
+ // Create empty file
213
+ await shell.context.fs.promises.writeFile(finalPath, '');
214
+ }
215
+ // Print the created path
216
+ await writelnStdout(process, terminal, finalPath);
217
+ return 0;
218
+ }
219
+ catch (error) {
220
+ if (!quiet) {
221
+ const errorMessage = error instanceof Error ? error.message : String(error);
222
+ await writelnStderr(process, terminal, `mktemp: ${errorMessage}`);
223
+ }
224
+ return 1;
225
+ }
226
+ }
227
+ });
228
+ }
229
+ //# sourceMappingURL=mktemp.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"mktemp.js","sourceRoot":"","sources":["../../src/commands/mktemp.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,6 @@
1
1
  import { TerminalEvents } from '@ecmaos/types';
2
2
  import { TerminalCommand } from '../shared/terminal-command.js';
3
- import { writelnStderr, writelnStdout } from '../shared/helpers.js';
3
+ import { writelnStderr } from '../shared/helpers.js';
4
4
  function printUsage(process, terminal) {
5
5
  const usage = `Usage: nc [OPTIONS] <host> [port]
6
6
  nc [OPTIONS] -u <url>
@@ -17,7 +17,7 @@ Examples:
17
17
  nc -p 443 echo.websocket.org
18
18
  nc -u wss://echo.websocket.org
19
19
  nc -u https://example.com:443`;
20
- writelnStdout(process, terminal, usage);
20
+ writelnStderr(process, terminal, usage);
21
21
  }
22
22
  function parseUrl(args) {
23
23
  let url;
@@ -1 +1 @@
1
- {"version":3,"file":"nc.js","sourceRoot":"","sources":["../../src/commands/nc.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"nc.js","sourceRoot":"","sources":["../../src/commands/nc.ts"],"names":[],"mappings":"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"}
@@ -11,7 +11,7 @@ Subcommands:
11
11
  remove-all Remove all passkeys
12
12
 
13
13
  --help display this help and exit`;
14
- writelnStdout(process, terminal, usage);
14
+ writelnStderr(process, terminal, usage);
15
15
  }
16
16
  export function createCommand(kernel, shell, terminal) {
17
17
  return new TerminalCommand({
@@ -166,7 +166,7 @@ export function createCommand(kernel, shell, terminal) {
166
166
  case 'remove': {
167
167
  if (!id) {
168
168
  await writelnStderr(process, terminal, chalk.red('Error: --id is required for remove command'));
169
- await writelnStdout(process, terminal, 'Usage: passkey remove --id <id>');
169
+ await writelnStderr(process, terminal, 'Usage: passkey remove --id <id>');
170
170
  return 1;
171
171
  }
172
172
  const passkeys = await kernel.users.getPasskeys(currentUid);
@@ -196,7 +196,7 @@ export function createCommand(kernel, shell, terminal) {
196
196
  }
197
197
  default:
198
198
  await writelnStderr(process, terminal, chalk.red(`Error: Unknown subcommand: ${subcommand}`));
199
- await writelnStdout(process, terminal, 'Run "passkey help" for usage information');
199
+ await writelnStderr(process, terminal, 'Run "passkey help" for usage information');
200
200
  return 1;
201
201
  }
202
202
  }
@@ -1,11 +1,11 @@
1
1
  import { TerminalCommand } from '../shared/terminal-command.js';
2
- import { writelnStdout } from '../shared/helpers.js';
2
+ import { writelnStdout, writelnStderr } from '../shared/helpers.js';
3
3
  function printUsage(process, terminal) {
4
4
  const usage = `Usage: pwd
5
5
  Print the name of the current working directory.
6
6
 
7
7
  --help display this help and exit`;
8
- writelnStdout(process, terminal, usage);
8
+ writelnStderr(process, terminal, usage);
9
9
  }
10
10
  export function createCommand(kernel, shell, terminal) {
11
11
  return new TerminalCommand({
@@ -1 +1 @@
1
- {"version":3,"file":"pwd.js","sourceRoot":"","sources":["../../src/commands/pwd.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAA;AAC/D,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAA;AAEpD,SAAS,UAAU,CAAC,OAA4B,EAAE,QAAkB;IAClE,MAAM,KAAK,GAAG;;;qCAGqB,CAAA;IACnC,aAAa,CAAC,OAAO,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAA;AACzC,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,MAAc,EAAE,KAAY,EAAE,QAAkB;IAC5E,OAAO,IAAI,eAAe,CAAC;QACzB,OAAO,EAAE,KAAK;QACd,WAAW,EAAE,mCAAmC;QAChD,MAAM;QACN,KAAK;QACL,QAAQ;QACR,GAAG,EAAE,KAAK,EAAE,GAAW,EAAE,IAAc,EAAE,EAAE;YACzC,MAAM,OAAO,GAAG,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,CAAwB,CAAA;YAEhE,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,QAAQ,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,EAAE,CAAC;gBAClE,UAAU,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAA;gBAC7B,OAAO,CAAC,CAAA;YACV,CAAC;YAED,MAAM,aAAa,CAAC,OAAO,EAAE,QAAQ,EAAE,KAAK,CAAC,GAAG,CAAC,CAAA;YACjD,OAAO,CAAC,CAAA;QACV,CAAC;KACF,CAAC,CAAA;AACJ,CAAC"}
1
+ {"version":3,"file":"pwd.js","sourceRoot":"","sources":["../../src/commands/pwd.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAA;AAC/D,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAA;AAEnE,SAAS,UAAU,CAAC,OAA4B,EAAE,QAAkB;IAClE,MAAM,KAAK,GAAG;;;qCAGqB,CAAA;IACnC,aAAa,CAAC,OAAO,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAA;AACzC,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,MAAc,EAAE,KAAY,EAAE,QAAkB;IAC5E,OAAO,IAAI,eAAe,CAAC;QACzB,OAAO,EAAE,KAAK;QACd,WAAW,EAAE,mCAAmC;QAChD,MAAM;QACN,KAAK;QACL,QAAQ;QACR,GAAG,EAAE,KAAK,EAAE,GAAW,EAAE,IAAc,EAAE,EAAE;YACzC,MAAM,OAAO,GAAG,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,CAAwB,CAAA;YAEhE,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,QAAQ,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,EAAE,CAAC;gBAClE,UAAU,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAA;gBAC7B,OAAO,CAAC,CAAA;YACV,CAAC;YAED,MAAM,aAAa,CAAC,OAAO,EAAE,QAAQ,EAAE,KAAK,CAAC,GAAG,CAAC,CAAA;YACjD,OAAO,CAAC,CAAA;QACV,CAAC;KACF,CAAC,CAAA;AACJ,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"rm.d.ts","sourceRoot":"","sources":["../../src/commands/rm.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAW,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AACrE,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAA;AAW/D,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,GAAG,eAAe,CAqH/F"}
1
+ {"version":3,"file":"rm.d.ts","sourceRoot":"","sources":["../../src/commands/rm.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,MAAM,EAAW,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AACrE,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAA;AAa/D,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,GAAG,eAAe,CA6J/F"}
@@ -5,7 +5,9 @@ function printUsage(process, terminal) {
5
5
  const usage = `Usage: rm [OPTION]... FILE...
6
6
  Remove (unlink) the FILE(s).
7
7
 
8
- --help display this help and exit`;
8
+ -f, --force ignore nonexistent files and arguments, never prompt
9
+ -r, -R, --recursive remove directories and their contents recursively
10
+ --help display this help and exit`;
9
11
  writelnStderr(process, terminal, usage);
10
12
  }
11
13
  export function createCommand(kernel, shell, terminal) {
@@ -26,10 +28,36 @@ export function createCommand(kernel, shell, terminal) {
26
28
  printUsage(process, terminal);
27
29
  return 0;
28
30
  }
31
+ let recursive = false;
32
+ let force = false;
29
33
  const pathArray = [];
30
34
  for (const arg of argv) {
31
35
  if (arg.startsWith('-') && arg !== '--') {
32
- if (arg !== '-f' && arg !== '-r' && arg !== '-rf' && arg !== '-fr') {
36
+ // Handle combined flags like -rf, -fr, -rR, etc.
37
+ if (arg === '--recursive' || arg === '-R') {
38
+ recursive = true;
39
+ }
40
+ else if (arg === '--force') {
41
+ force = true;
42
+ }
43
+ else if (arg.length > 1) {
44
+ // Parse individual flags in combined options like -rf
45
+ for (let i = 1; i < arg.length; i++) {
46
+ const flag = arg[i];
47
+ if (flag === 'r' || flag === 'R') {
48
+ recursive = true;
49
+ }
50
+ else if (flag === 'f') {
51
+ force = true;
52
+ }
53
+ else {
54
+ await writelnStderr(process, terminal, `rm: invalid option -- '${flag}'`);
55
+ await writelnStderr(process, terminal, "Try 'rm --help' for more information.");
56
+ return 1;
57
+ }
58
+ }
59
+ }
60
+ else {
33
61
  await writelnStderr(process, terminal, `rm: invalid option -- '${arg.slice(1)}'`);
34
62
  await writelnStderr(process, terminal, "Try 'rm --help' for more information.");
35
63
  return 1;
@@ -91,24 +119,41 @@ export function createCommand(kernel, shell, terminal) {
91
119
  let hasError = false;
92
120
  for (const target of expandedPaths) {
93
121
  if (!target || typeof target !== 'string') {
94
- await writelnStderr(process, terminal, `rm: ${String(target)}: No such file or directory`);
95
- hasError = true;
122
+ if (!force) {
123
+ await writelnStderr(process, terminal, `rm: ${String(target)}: No such file or directory`);
124
+ hasError = true;
125
+ }
96
126
  continue;
97
127
  }
98
128
  const fullPath = path.resolve(shell.cwd, target);
99
129
  try {
100
- const stat = await shell.context.fs.promises.stat(fullPath);
101
- if (stat.isDirectory()) {
102
- await shell.context.fs.promises.rmdir(fullPath);
130
+ // Check if it's a directory to validate recursive flag requirement
131
+ try {
132
+ const stat = await shell.context.fs.promises.stat(fullPath);
133
+ if (stat.isDirectory() && !recursive) {
134
+ await writelnStderr(process, terminal, `rm: ${target}: is a directory`);
135
+ hasError = true;
136
+ continue;
137
+ }
103
138
  }
104
- else {
105
- await shell.context.fs.promises.unlink(fullPath);
139
+ catch (statError) {
140
+ // If stat fails, the file might not exist
141
+ // If force is enabled, we'll try to remove it anyway (rm will handle it)
142
+ // If force is not enabled, we'll let rm handle the error
106
143
  }
144
+ // Use fs.promises.rm with appropriate options
145
+ await shell.context.fs.promises.rm(fullPath, {
146
+ recursive: recursive,
147
+ force: force
148
+ });
107
149
  }
108
150
  catch (error) {
109
- const errorMessage = error instanceof Error ? error.message : String(error);
110
- await writelnStderr(process, terminal, `rm: ${target}: ${errorMessage}`);
111
- hasError = true;
151
+ // If force is enabled, ignore errors
152
+ if (!force) {
153
+ const errorMessage = error instanceof Error ? error.message : String(error);
154
+ await writelnStderr(process, terminal, `rm: ${target}: ${errorMessage}`);
155
+ hasError = true;
156
+ }
112
157
  }
113
158
  }
114
159
  return hasError ? 1 : 0;
@@ -1 +1 @@
1
- {"version":3,"file":"rm.js","sourceRoot":"","sources":["../../src/commands/rm.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,MAAM,CAAA;AAEvB,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAA;AAC/D,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAA;AAEpD,SAAS,UAAU,CAAC,OAA4B,EAAE,QAAkB;IAClE,MAAM,KAAK,GAAG;;;qCAGqB,CAAA;IACnC,aAAa,CAAC,OAAO,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAA;AACzC,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,MAAc,EAAE,KAAY,EAAE,QAAkB;IAC5E,OAAO,IAAI,eAAe,CAAC;QACzB,OAAO,EAAE,IAAI;QACb,WAAW,EAAE,6BAA6B;QAC1C,MAAM;QACN,KAAK;QACL,QAAQ;QACR,GAAG,EAAE,KAAK,EAAE,GAAW,EAAE,IAAc,EAAE,EAAE;YACzC,MAAM,OAAO,GAAG,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,CAAwB,CAAA;YAEhE,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACtB,MAAM,aAAa,CAAC,OAAO,EAAE,QAAQ,EAAE,qBAAqB,CAAC,CAAA;gBAC7D,MAAM,aAAa,CAAC,OAAO,EAAE,QAAQ,EAAE,uCAAuC,CAAC,CAAA;gBAC/E,OAAO,CAAC,CAAA;YACV,CAAC;YAED,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,QAAQ,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,EAAE,CAAC;gBAC7C,UAAU,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAA;gBAC7B,OAAO,CAAC,CAAA;YACV,CAAC;YAED,MAAM,SAAS,GAAa,EAAE,CAAA;YAC9B,KAAK,MAAM,GAAG,IAAI,IAAI,EAAE,CAAC;gBACvB,IAAI,GAAG,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,GAAG,KAAK,IAAI,EAAE,CAAC;oBACxC,IAAI,GAAG,KAAK,IAAI,IAAI,GAAG,KAAK,IAAI,IAAI,GAAG,KAAK,KAAK,IAAI,GAAG,KAAK,KAAK,EAAE,CAAC;wBACnE,MAAM,aAAa,CAAC,OAAO,EAAE,QAAQ,EAAE,0BAA0B,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC,GAAG,CAAC,CAAA;wBACjF,MAAM,aAAa,CAAC,OAAO,EAAE,QAAQ,EAAE,uCAAuC,CAAC,CAAA;wBAC/E,OAAO,CAAC,CAAA;oBACV,CAAC;gBACH,CAAC;qBAAM,CAAC;oBACN,SAAS,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;gBACrB,CAAC;YACH,CAAC;YAED,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC3B,MAAM,aAAa,CAAC,OAAO,EAAE,QAAQ,EAAE,qBAAqB,CAAC,CAAA;gBAC7D,MAAM,aAAa,CAAC,OAAO,EAAE,QAAQ,EAAE,uCAAuC,CAAC,CAAA;gBAC/E,OAAO,CAAC,CAAA;YACV,CAAC;YAED,MAAM,UAAU,GAAG,KAAK,EAAE,OAAe,EAAqB,EAAE;gBAC9D,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;oBACrD,OAAO,CAAC,OAAO,CAAC,CAAA;gBAClB,CAAC;gBAED,MAAM,cAAc,GAAG,OAAO,CAAC,WAAW,CAAC,GAAG,CAAC,CAAA;gBAC/C,MAAM,SAAS,GAAG,cAAc,KAAK,CAAC,CAAC;oBACrC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,cAAc,GAAG,CAAC,CAAC,CAAC;oBACnE,CAAC,CAAC,KAAK,CAAC,GAAG,CAAA;gBACb,MAAM,WAAW,GAAG,cAAc,KAAK,CAAC,CAAC;oBACvC,CAAC,CAAC,OAAO,CAAC,SAAS,CAAC,cAAc,GAAG,CAAC,CAAC;oBACvC,CAAC,CAAC,OAAO,CAAA;gBAEX,IAAI,CAAC;oBACH,MAAM,OAAO,GAAG,MAAM,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,QAAQ,CAAC,OAAO,CAAC,SAAS,CAAC,CAAA;oBAClE,MAAM,YAAY,GAAG,WAAW;yBAC7B,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC;yBACrB,OAAO,CAAC,KAAK,EAAE,IAAI,CAAC;yBACpB,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAA;oBACtB,MAAM,KAAK,GAAG,IAAI,MAAM,CAAC,IAAI,YAAY,GAAG,CAAC,CAAA;oBAE7C,MAAM,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAA;oBAE1D,IAAI,cAAc,KAAK,CAAC,CAAC,EAAE,CAAC;wBAC1B,MAAM,OAAO,GAAG,OAAO,CAAC,SAAS,CAAC,CAAC,EAAE,cAAc,GAAG,CAAC,CAAC,CAAA;wBACxD,OAAO,OAAO,CAAC,GAAG,CAAC,KAAK,CAAC,EAAE,CAAC,OAAO,GAAG,KAAK,CAAC,CAAA;oBAC9C,CAAC;oBACD,OAAO,OAAO,CAAA;gBAChB,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,OAAO,EAAE,CAAA;gBACX,CAAC;YACH,CAAC,CAAA;YAED,MAAM,aAAa,GAAa,EAAE,CAAA;YAClC,KAAK,MAAM,OAAO,IAAI,SAAS,EAAE,CAAC;gBAChC,MAAM,QAAQ,GAAG,MAAM,UAAU,CAAC,OAAO,CAAC,CAAA;gBAC1C,IAAI,QAAQ,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;oBAC1B,aAAa,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;gBAC7B,CAAC;qBAAM,CAAC;oBACN,aAAa,CAAC,IAAI,CAAC,GAAG,QAAQ,CAAC,CAAA;gBACjC,CAAC;YACH,CAAC;YAED,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAC/B,MAAM,aAAa,CAAC,OAAO,EAAE,QAAQ,EAAE,qBAAqB,CAAC,CAAA;gBAC7D,MAAM,aAAa,CAAC,OAAO,EAAE,QAAQ,EAAE,uCAAuC,CAAC,CAAA;gBAC/E,OAAO,CAAC,CAAA;YACV,CAAC;YAED,IAAI,QAAQ,GAAG,KAAK,CAAA;YAEpB,KAAK,MAAM,MAAM,IAAI,aAAa,EAAE,CAAC;gBACnC,IAAI,CAAC,MAAM,IAAI,OAAO,MAAM,KAAK,QAAQ,EAAE,CAAC;oBAC1C,MAAM,aAAa,CAAC,OAAO,EAAE,QAAQ,EAAE,OAAO,MAAM,CAAC,MAAM,CAAC,6BAA6B,CAAC,CAAA;oBAC1F,QAAQ,GAAG,IAAI,CAAA;oBACf,SAAQ;gBACV,CAAC;gBAED,MAAM,QAAQ,GAAG,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE,MAAM,CAAC,CAAA;gBAEhD,IAAI,CAAC;oBACH,MAAM,IAAI,GAAG,MAAM,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;oBAC3D,IAAI,IAAI,CAAC,WAAW,EAAE,EAAE,CAAC;wBACvB,MAAM,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,QAAQ,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAA;oBACjD,CAAC;yBAAM,CAAC;wBACN,MAAM,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAA;oBAClD,CAAC;gBACH,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;oBAC3E,MAAM,aAAa,CAAC,OAAO,EAAE,QAAQ,EAAE,OAAO,MAAM,KAAK,YAAY,EAAE,CAAC,CAAA;oBACxE,QAAQ,GAAG,IAAI,CAAA;gBACjB,CAAC;YACH,CAAC;YAED,OAAO,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;QACzB,CAAC;KACF,CAAC,CAAA;AACJ,CAAC"}
1
+ {"version":3,"file":"rm.js","sourceRoot":"","sources":["../../src/commands/rm.ts"],"names":[],"mappings":"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"}
@@ -1,12 +1,12 @@
1
1
  import path from 'path';
2
2
  import { TerminalCommand } from '../shared/terminal-command.js';
3
- import { writelnStdout, writelnStderr } from '../shared/helpers.js';
3
+ import { writelnStderr } from '../shared/helpers.js';
4
4
  function printUsage(process, terminal) {
5
5
  const usage = `Usage: rmdir [OPTION]... DIRECTORY...
6
6
  Remove the DIRECTORY(ies), if they are empty.
7
7
 
8
8
  --help display this help and exit`;
9
- writelnStdout(process, terminal, usage);
9
+ writelnStderr(process, terminal, usage);
10
10
  }
11
11
  export function createCommand(kernel, shell, terminal) {
12
12
  return new TerminalCommand({
@@ -1 +1 @@
1
- {"version":3,"file":"rmdir.js","sourceRoot":"","sources":["../../src/commands/rmdir.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,MAAM,CAAA;AAEvB,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAA;AAC/D,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAA;AAEnE,SAAS,UAAU,CAAC,OAA4B,EAAE,QAAkB;IAClE,MAAM,KAAK,GAAG;;;qCAGqB,CAAA;IACnC,aAAa,CAAC,OAAO,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAA;AACzC,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,MAAc,EAAE,KAAY,EAAE,QAAkB;IAC5E,OAAO,IAAI,eAAe,CAAC;QACzB,OAAO,EAAE,OAAO;QAChB,WAAW,EAAE,oBAAoB;QACjC,MAAM;QACN,KAAK;QACL,QAAQ;QACR,GAAG,EAAE,KAAK,EAAE,GAAW,EAAE,IAAc,EAAE,EAAE;YACzC,MAAM,OAAO,GAAG,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,CAAwB,CAAA;YAEhE,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,QAAQ,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,EAAE,CAAC;gBAClE,UAAU,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAA;gBAC7B,OAAO,CAAC,CAAA;YACV,CAAC;YAED,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACtB,MAAM,aAAa,CAAC,OAAO,EAAE,QAAQ,EAAE,wBAAwB,CAAC,CAAA;gBAChE,MAAM,aAAa,CAAC,OAAO,EAAE,QAAQ,EAAE,0CAA0C,CAAC,CAAA;gBAClF,OAAO,CAAC,CAAA;YACV,CAAC;YAED,IAAI,QAAQ,GAAG,KAAK,CAAA;YAEpB,KAAK,MAAM,MAAM,IAAI,IAAI,EAAE,CAAC;gBAC1B,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC;oBAAE,SAAQ;gBAE/C,MAAM,QAAQ,GAAG,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAA;gBAErE,IAAI,CAAC;oBACH,MAAM,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAA;gBAChF,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;oBAC3E,MAAM,aAAa,CAAC,OAAO,EAAE,QAAQ,EAAE,UAAU,MAAM,KAAK,YAAY,EAAE,CAAC,CAAA;oBAC3E,QAAQ,GAAG,IAAI,CAAA;gBACjB,CAAC;YACH,CAAC;YAED,OAAO,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;QACzB,CAAC;KACF,CAAC,CAAA;AACJ,CAAC"}
1
+ {"version":3,"file":"rmdir.js","sourceRoot":"","sources":["../../src/commands/rmdir.ts"],"names":[],"mappings":"AAAA,OAAO,IAAI,MAAM,MAAM,CAAA;AAEvB,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAA;AAC/D,OAAO,EAAE,aAAa,EAAE,MAAM,sBAAsB,CAAA;AAEpD,SAAS,UAAU,CAAC,OAA4B,EAAE,QAAkB;IAClE,MAAM,KAAK,GAAG;;;qCAGqB,CAAA;IACnC,aAAa,CAAC,OAAO,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAA;AACzC,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,MAAc,EAAE,KAAY,EAAE,QAAkB;IAC5E,OAAO,IAAI,eAAe,CAAC;QACzB,OAAO,EAAE,OAAO;QAChB,WAAW,EAAE,oBAAoB;QACjC,MAAM;QACN,KAAK;QACL,QAAQ;QACR,GAAG,EAAE,KAAK,EAAE,GAAW,EAAE,IAAc,EAAE,EAAE;YACzC,MAAM,OAAO,GAAG,MAAM,CAAC,SAAS,CAAC,GAAG,CAAC,GAAG,CAAwB,CAAA;YAEhE,IAAI,IAAI,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,QAAQ,IAAI,IAAI,CAAC,CAAC,CAAC,KAAK,IAAI,CAAC,EAAE,CAAC;gBAClE,UAAU,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAA;gBAC7B,OAAO,CAAC,CAAA;YACV,CAAC;YAED,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACtB,MAAM,aAAa,CAAC,OAAO,EAAE,QAAQ,EAAE,wBAAwB,CAAC,CAAA;gBAChE,MAAM,aAAa,CAAC,OAAO,EAAE,QAAQ,EAAE,0CAA0C,CAAC,CAAA;gBAClF,OAAO,CAAC,CAAA;YACV,CAAC;YAED,IAAI,QAAQ,GAAG,KAAK,CAAA;YAEpB,KAAK,MAAM,MAAM,IAAI,IAAI,EAAE,CAAC;gBAC1B,IAAI,CAAC,MAAM,IAAI,MAAM,CAAC,UAAU,CAAC,GAAG,CAAC;oBAAE,SAAQ;gBAE/C,MAAM,QAAQ,GAAG,MAAM,CAAC,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,GAAG,CAAA;gBAErE,IAAI,CAAC;oBACH,MAAM,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,QAAQ,CAAC,EAAE,CAAC,QAAQ,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,KAAK,EAAE,IAAI,EAAE,CAAC,CAAA;gBAChF,CAAC;gBAAC,OAAO,KAAK,EAAE,CAAC;oBACf,MAAM,YAAY,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAA;oBAC3E,MAAM,aAAa,CAAC,OAAO,EAAE,QAAQ,EAAE,UAAU,MAAM,KAAK,YAAY,EAAE,CAAC,CAAA;oBAC3E,QAAQ,GAAG,IAAI,CAAA;gBACjB,CAAC;YACH,CAAC;YAED,OAAO,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAA;QACzB,CAAC;KACF,CAAC,CAAA;AACJ,CAAC"}
@@ -24,7 +24,7 @@ Examples:
24
24
  sockets create https://example.com:443 -t webtransport
25
25
  sockets close abc-123-def-456
26
26
  sockets show abc-123-def-456`;
27
- writelnStdout(process, terminal, usage);
27
+ writelnStderr(process, terminal, usage);
28
28
  }
29
29
  function findConnectionById(kernel, id) {
30
30
  const fullMatch = kernel.sockets.get(id);
@@ -1 +1 @@
1
- {"version":3,"file":"stat.d.ts","sourceRoot":"","sources":["../../src/commands/stat.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,MAAM,EAAW,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AACrE,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAA;AAW/D,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,GAAG,eAAe,CAiC/F"}
1
+ {"version":3,"file":"stat.d.ts","sourceRoot":"","sources":["../../src/commands/stat.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,MAAM,EAAW,KAAK,EAAE,QAAQ,EAAE,MAAM,eAAe,CAAA;AACrE,OAAO,EAAE,eAAe,EAAE,MAAM,+BAA+B,CAAA;AAW/D,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,EAAE,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,QAAQ,GAAG,eAAe,CA6D/F"}
@@ -2,13 +2,13 @@ import path from 'path';
2
2
  import chalk from 'chalk';
3
3
  import * as zipjs from '@zip.js/zip.js';
4
4
  import { TerminalCommand } from '../shared/terminal-command.js';
5
- import { writelnStdout } from '../shared/helpers.js';
5
+ import { writelnStdout, writelnStderr } from '../shared/helpers.js';
6
6
  function printUsage(process, terminal) {
7
7
  const usage = `Usage: stat [OPTION]... FILE...
8
8
  Display file or file system status.
9
9
 
10
10
  --help display this help and exit`;
11
- writelnStdout(process, terminal, usage);
11
+ writelnStderr(process, terminal, usage);
12
12
  }
13
13
  export function createCommand(kernel, shell, terminal) {
14
14
  return new TerminalCommand({
@@ -23,21 +23,43 @@ export function createCommand(kernel, shell, terminal) {
23
23
  printUsage(process, terminal);
24
24
  return 0;
25
25
  }
26
- const argPath = argv.length > 0 && argv[0] && !argv[0].startsWith('-') ? argv[0] : shell.cwd;
27
- const fullPath = argPath ? path.resolve(shell.cwd, argPath) : shell.cwd;
28
- const stats = await shell.context.fs.promises.stat(fullPath);
29
- await writelnStdout(process, terminal, JSON.stringify(stats, null, 2));
30
- const extension = path.extname(fullPath);
31
- if (extension === '.zip') {
32
- const blob = new Blob([new Uint8Array(await shell.context.fs.promises.readFile(fullPath))]);
33
- const zipReader = new zipjs.ZipReader(new zipjs.BlobReader(blob));
34
- const entries = await zipReader.getEntries();
35
- await writelnStdout(process, terminal, chalk.bold('\nZIP Entries:'));
36
- for (const entry of entries) {
37
- await writelnStdout(process, terminal, `${chalk.blue(entry.filename)} (${entry.uncompressedSize} bytes)`);
26
+ // Filter out options/flags and get target paths
27
+ const targets = argv.length > 0
28
+ ? argv.filter(arg => !arg.startsWith('-'))
29
+ : [shell.cwd];
30
+ if (targets.length === 0) {
31
+ targets.push(shell.cwd);
32
+ }
33
+ let hasError = false;
34
+ for (const target of targets) {
35
+ const fullPath = path.resolve(shell.cwd, target);
36
+ try {
37
+ const stats = await shell.context.fs.promises.stat(fullPath);
38
+ if (targets.length > 1) {
39
+ await writelnStdout(process, terminal, `${target}:`);
40
+ }
41
+ await writelnStdout(process, terminal, JSON.stringify(stats, null, 2));
42
+ const extension = path.extname(fullPath);
43
+ if (extension === '.zip') {
44
+ const blob = new Blob([new Uint8Array(await shell.context.fs.promises.readFile(fullPath))]);
45
+ const zipReader = new zipjs.ZipReader(new zipjs.BlobReader(blob));
46
+ const entries = await zipReader.getEntries();
47
+ await writelnStdout(process, terminal, chalk.bold('\nZIP Entries:'));
48
+ for (const entry of entries) {
49
+ await writelnStdout(process, terminal, `${chalk.blue(entry.filename)} (${entry.uncompressedSize} bytes)`);
50
+ }
51
+ }
52
+ if (targets.length > 1) {
53
+ await writelnStdout(process, terminal, '');
54
+ }
55
+ }
56
+ catch (error) {
57
+ const errorMessage = error instanceof Error ? error.message : String(error);
58
+ await writelnStderr(process, terminal, `stat: ${target}: ${errorMessage}`);
59
+ hasError = true;
38
60
  }
39
61
  }
40
- return 0;
62
+ return hasError ? 1 : 0;
41
63
  }
42
64
  });
43
65
  }