Artikel ini akan memperkenalkan cara menutup aplikasi lain menggunakan Node.js. Dalam aplikasi sebenar, fungsi tersebut boleh digunakan untuk melindungi keselamatan sistem, mengurus status pengendalian sistem, atau atas pelbagai sebab lain. Dalam Node.js, anda boleh melaksanakan program luaran dengan menggunakan kaedah exec modul child_process. Sudah tentu, apabila melakukan operasi sedemikian, perhatian khusus perlu diberikan untuk mempertimbangkan dan menilai keselamatan sistem untuk mengelakkan masalah yang tidak perlu.
Langkah 1: Perkenalkan modul child_process
Dalam Node.js, anda boleh melaksanakan arahan sistem dengan memperkenalkan modul child_process. Anda boleh menambah kod berikut pada permulaan kod:
const { exec } = require('child_process');
Langkah 2: Cari ID proses yang perlu ditutup
Sebelum melaksanakan operasi menutup program lain, anda perlu mendapatkan proses ID program ini. Anda boleh menyenaraikan semua proses yang berjalan dalam sistem semasa dengan melaksanakan arahan "ps -A". Dalam sistem Linux, setiap proses mempunyai ID proses (PID) yang unik. Kita boleh melakukan operasi penutupan dengan mencari PID yang sepadan dengan nama program. Anda boleh menggunakan kod berikut untuk mencari PID proses:
exec('pidof <AppName>', (err, stdout, stderr) => { if (err) { console.error(err); return; } console.log(stdout); });
Dalam kod di atas, "
Langkah 3: Tutup program lain
Selepas kami memperoleh PID program yang perlu ditutup, kami boleh melaksanakan arahan "bunuh PID" untuk menutupnya. Dalam sistem Linux, anda boleh menggunakan kod berikut untuk menutup proses dengan PID tertentu:
exec('kill <PID>', (err, stdout, stderr) => { if (err) { console.error(err); return; } console.log(stdout); });
Dalam kod di atas, "
Langkah 4: Lengkapkan kod sampel
const { exec } = require('child_process'); const closeApp = (appName) => { exec(`pidof ${appName}`, (err, stdout, stderr) => { if (err) { console.error(err); return; } // 当前程序的PID const curPID = process.pid; // 查找到的所有程序PID数组 const pidList = stdout .split(' ') .filter((pid) => pid && pid !== String(curPID)); if (pidList.length > 0) { pidList.forEach((pid) => { exec(`kill ${pid}`, (err, stdout, stderr) => { if (err) { console.error(err); return; } console.log(`${pid} is killed`); }); }); } else { console.log(`No ${appName} process is found`); } }); }; // 以Chrome浏览器为例进行测试 closeApp('chrome');
Dalam kod di atas, kami menggunakan fungsi closeApp untuk melaksanakan operasi menutup program lain. Apabila mencari PID program yang perlu ditutup, kami juga secara khusus menentukan PID program semasa untuk mengelakkan penutupan proses semasa secara tidak sengaja. Selepas mencari PID program yang perlu ditutup, kami menggunakan forEach untuk melintasi senarai PID dan kemudian melakukan operasi penutupan satu demi satu.
Di atas ialah cara menggunakan Node.js untuk menutup aplikasi lain Sudah tentu, dalam aplikasi sebenar, butiran lanjut dan isu keselamatan perlu dipertimbangkan. Kami berharap pembaca dapat menjalani penilaian dan ujian keselamatan yang mencukupi sebelum kod dilaksanakan untuk memastikan ketepatan dan kebolehpercayaan program.
Atas ialah kandungan terperinci nodejs menutup aplikasi lain. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!