如何将带有标点符号的密码传递给“mount”命令?

如何将带有标点符号的密码传递给“mount”命令?

我有一个 shell 脚本,用于依次挂载多个 Samba 共享。我希望我的用户只需输入一次密码。我可以使用以下命令输入密码:

mount -v -t smbfs -o nodev,nosuid //$用户:[电子邮件保护]:/共享 /卷/共享

当密码中包含诸如“^”或“。”之类的奇怪字符时,此方法不起作用。

有任何想法吗?

答案1

您可以使用用户密码命令的选项mount.cifs(参见手册页mount.cifs(8))如mount -o ...,user="foo",password="bar" //example.com:/share或使用证书选项提供包含用户凭证的文件的路径(另请参阅mount.cifs(8))。

答案2

您必须在 Mac 上对特殊字符(奇怪的字符)进行 URL 编码,因为“mount_smbfs:-o user:不支持选项”。因此,在您的示例中,“^”= %5E

URL 编码在这里: http://www.w3schools.com/tags/ref_urlencode.asp

答案3

您是否尝试过将密码短语放在引号中?

答案4

尝试用引号将整个选项表达式括起来,例如 mount -v -o "..."。

相关内容