我在一个混合环境中,并负责通过使用他们已经创建的批处理脚本为他们的 Windows 登录安装 Mac 用户的共享。
我有两个主要问题。
尝试在 Mac 上的脚本中读取 NETLOGON 共享
试图将这些脚本中的 net use 命令转换为 mac 可以使用的东西。
我大部分时间都花在将整个 net use 命令转换为可用于 mac 的部分上。
我开始:
IFS='
'
arr=($(grep '\\' /Users/tjguidry/Desktop/tjguidry.bat | tr "[A-Z]" "[a-z]"))
预期的数组是这样的(基于我已经拥有的文件):
net use n: \\domain\dfs1\share1 /persistent:no
net use r: \\domain\dfs1\share2 /persistent:no
rem net use o: \\domain\dfs1\share3 /persistent:no
rem net use p: "\\domain\dfs1\share4" /persistent:no
grep 命令在终端中单独执行它应该做的事情但是当我输出数组时,\domain 中的第一个斜杠被切断,并且对于以字母“a”开头的某些共享(即 \domain\dfs1\admin)它切断输出中的“\ a”。所以我得到:
net use n: \domain\dfs1\share1 /persistent:no
net use r: \domain\dfs1\share2 /persistent:no
rem net use o: \domain\dfs1hare3 /persistent:no
rem net use p: "\domain\dfs1hare4" /persistent:no
无论我如何尝试逃避斜线,我似乎也无法切断“\\”来尝试摆脱字符串的第一个放置。
理想情况下,我想将输出转换为类似 smb://domain/dfs1/share1 的东西,以便 mac 能够安装它。