PLINK 执行:echo -e "%UNIXPW%\n" ^| sudo -S nginx -t -c,在一个上运行正常,在另一个上运行失败

PLINK 执行:echo -e "%UNIXPW%\n" ^| sudo -S nginx -t -c,在一个上运行正常,在另一个上运行失败

我的批处理文件在 Ubuntu 16.04 LTS 中运行 PLINK 脚本,该脚本在我自己的 VM/Ubuntu 上正常运行。

在不同的 VM/ubuntu 16.04 LTS 上运行时,相同的命令会失败。

echo -e "%UNIXPW%\n" ^| sudo -S nginx -t -c /home/%UNIXUSR%/Documents/%FILENAME%%EXT% ^&^> /home/%UNIXUSR%/Documents/%FILENAME%Result%TXTEXT% > "%FILEPATH%%FILENAME%%SHEXT%"

两个 Ubuntu 都只有 1 个用户,并且 PLINK 会话正在使用该用户。

什么原因会导致这种情况?我该如何修复它才能使其在两者上都能正常运行?

答案1

%UNIXPW% 中的密码包含一些特殊字符,导致此操作失败。

将密码更改为字母数字使其在所有 ubuntu 机器上运行!

相关内容