executeCommandWithStream
codebolt.terminal.executeCommandWithStream(command: string, executeInMain: boolean): EventEmitter
Executes a given command and streams the output in real-time via EventEmitter.
Parameters
Name | Type | Description |
---|---|---|
command | string | The command to be executed. |
executeInMain | boolean | Optional parameter to execute in main terminal. Defaults to false. |
Example
// Basic streaming command
const streamEmitter = codebolt.terminal.executeCommandWithStream('echo "Streaming test"');
streamEmitter.on('commandOutput', (data) => {
console.log('📡 Stream data:', data);
});
streamEmitter.on('commandError', (error) => {
console.error('❌ Stream error:', error);
});
streamEmitter.on('commandFinish', () => {
console.log('✅ Stream ended');
});
// Long-running command with monitoring
const buildEmitter = codebolt.terminal.executeCommandWithStream('npm run build');
buildEmitter.on('commandOutput', (data) => {
console.log('Build output:', data.message);
if (data.message.includes('Compilation successful')) {
console.log('🎉 Build completed successfully!');
}
});
buildEmitter.on('commandError', (error) => {
console.error('Build error:', error.message);
});
buildEmitter.on('commandFinish', () => {
console.log('🏁 Build process finished');
});