我想通过 winexe 将一个名为 $test 的 shell 变量从 linux 传递到 windows。
例如:
winexe -W WORKGROUP -U 用户%密码 //192.160.13.13 'cmd.exe /C 移动 D:\restore_db\$test D:\Restore\'
有什么方法可以实现这个目标吗?
答案1
我以前从未使用过winexe
,但我不明白为什么不能在winexe
*nix 端的命令行中进行 shell 变量替换。我认为你只需要调整 shell 变量替换来执行你想要的操作,就可以了。在包含 $ 变量替换的 Windows 命令行上加上双引号应该可以解决问题。
答案2
由于winexe
在 Linux 上调用,因此所有常用的扩展规则均适用。在您的示例中,$test
将不会扩展,因为您已将其括在单引号中。文字文本$test
将传递给cmd.exe
。如果将单引号更改为双引号,则将$test
在传递给 之前进行扩展cmd.exe
。