使用node.js以编程方式添加samba用户

使用node.js以编程方式添加samba用户,node.js,linux,bash,samba,Node.js,Linux,Bash,Samba,我在node js中编写了如下函数: const addUserToSamba = (userLogin, password) => { const echoPassword = spawnSync('echo', ['ne',`${password}\n${password}\n`]); const addUserCredentialsToSamba = spawnSync('smbpasswd', ['-a', '-s', userLogin],

我在node js中编写了如下函数:

const addUserToSamba = (userLogin, password) => {

         const echoPassword = spawnSync('echo', ['ne',`${password}\n${password}\n`]);

         const addUserCredentialsToSamba = spawnSync('smbpasswd', ['-a', '-s', userLogin], {
                 input: echoPassword.stdout,
         });

         console.log('Added user credentials to Samba configuration');
         console.log(addUserCredentialsToSamba.stderr.toString());
         console.log(addUserCredentialsToSamba.stdout.toString());
}
我想在bash中实现以下目标:

echo -ne "$PASS\n$PASS\n" | smbpasswd -a -s $LOGIN
当我运行
addUserToSamba(userLogin,password)时function,然后我甚至会收到消息
Added user${userLogin}
,作为addUserCredentialsToSamba结果的标准输出

但是证书不起作用

我是否正确地将这个bash函数重写为node.js函数?
如果没有,我如何修复它?

您只需跳过
echo
部分,直接将凭证输出到
smbpasswd
过程:

const addUserCredentialsToSamba = spawnSync('smbpasswd', ['-a', '-s', userLogin], {
    input: `${password}\n${password}\n`,
});