O objeto global process no Node.js fornece informacoes e controle sobre o processo em execucao no momento sem a necessidade de require.
Argumentos de Linha de Comando e Ambiente
// Matriz de argumentos da linha de comando
// Execucao: node script.js --mode=prod input.txt
process.argv;
// => ['/path/to/node', '/path/to/script.js', '--mode=prod', 'input.txt']
// Dicionario de variaveis de ambiente
const port = process.env.PORT || 3000;
const isDev = process.env.NODE_ENV !== 'production';
// ID do processo e arquitetura da plataforma
process.pid; // Process ID integer
process.platform; // 'darwin', 'linux', 'win32'
process.arch; // 'x64', 'arm64'
Navegação no Diretório de Trabalho
// Diretorio de trabalho atual
console.log(process.cwd()); // e.g. "/Users/project"
// Alterar diretorio de trabalho
process.chdir('/tmp');
Finalização do Processo e Códigos de Saída
// Finalizacao limpa com sucesso
process.exit(0);
// Saida com erro (codigo diferente de zero)
process.exit(1);
// Interceptar evento de saida
process.on('exit', (code) => {
console.log(`Process exited with code: ${code}`);
});
// Interceptar excecoes nao tratadas
process.on('uncaughtException', (err) => {
console.error('Fatal crash:', err);
process.exit(1);
});