从名称中包含空格的服务器挂载SMB共享

时间:2013-04-05 16:19:15

标签: bash shell escaping mount smb

我正在尝试在终端上安装SMB共享。如果服务器的名称中没有使用此命令的空格,我可以这样做:

$ mount -t smbfs //user:password@server/resource /Volumes/resource

但是在我的情况下,服务器名称有空格,我无法弄清楚如何正确传递这样的名称。

我尝试使用双引号或单引号:

$ mount -t smbfs "//user:password@ser ver/resource" /Volumes/resource
mount_smbfs: URL parsing failed, please correct the URL and try again: Invalid argument

我试图逃离这个空间:

$ mount -t smbfs //user:password@ser\ ver/resource /Volumes/resource
mount_smbfs: URL parsing failed, please correct the URL and try again: Invalid argument

我也尝试使用%20\x20\040,但收到错误:

mount_smbfs: server connection failed: No route to host

我知道我可以使用IP地址或重命名服务器,但这将是一种解决方法,而不是解决方案,我想知道我缺少什么。

1 个答案:

答案 0 :(得分:1)

如果你把引号和转义结合起来会发生什么:

mount -t smbfs "//user:password@ser\ ver/resource" /Volumes/resource

据报道,mounting an smbfs volume with a space in the username时曾为某人工作过。