问题标签 [subst]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
3 回答
58 浏览

php - 如何在大 PHP 字符串中的 '}' 字符后添加空格?

我有一个大的 .css 文件,它都是内联编码的。这使得准确地找到元素变得非常不优雅和困难。我想将它粘贴到一个 PHP 函数中,该函数在每个“{”括号后给出一个空格,因为如果我手动执行它会花费我更多时间。

我应该使用哪个功能?

0 投票
1 回答
88 浏览

common-lisp - subst-if 在 Common Lisp 中的树上抛出错误工作

为什么我会收到此错误:

绑定 SB-KERNEL::X [条件类型 TYPE-ERROR] 时,值 (2 (2 (2 (2 (2) 2) 2) 2) 2) 不是 NUMBER 类型

subst-if使用以下测试功能调用时:

0 投票
1 回答
619 浏览

vb.net - 由 SUBST (Windows 10) 创建的驱动器未报告 QueryDosDevice() 的完整路径

编辑 - 看起来我发现了问题

对不起。显然这都是我的错。有关详细信息,请参阅下面的我自己写的答案。


我正在对一个SUBST-ed 驱动器进行测试,该驱动器包含在一个更大的方法中,该方法测试一个字符串以确保它(至少,可能)是一个有效的路径。经过一些验证后,“封装”方法将字符串转换为 UNC 或绝对路径,具体取决于传入的路径,以在其他地方返回。

几个例子:

  • 对于U:\映射到的驱动器\\SERVERNAME\Share,使用\HKCU\Network\Windows 注册表中的键查找本地计算机上的网络驱动器映射,U:\PublicFolder\SomeFile.txt变为\\SERVERNAME\Share\PublicFolder\SomeFile.txt

  • 或者,C:\SomeFolder\SomeFile.txt保持不变,因为(在方法中确定)它是本地物理驱动器的绝对路径。

到目前为止,其中大部分似乎运行良好且符合预期,但我遇到了与SUBSTWindows 10 中的命令创建的驱动器有关的问题(至少 - 我目前尚未在另一个操作系统下运行任何测试因为我现在没有其他可用的)。

老实说,我对这个SUBST命令没有太多经验,也不经常使用它,所以一开始,我什至无法让驱动器在 Windows 中正确显示。在阅读了 Microsoft 社区页面上的讨论后(Windows 10 问题“Subst”命令不起作用),我终于能够“正确”设置驱动器(不要使用提升的命令提示符,顺便说一句),但是我用来测试 -ed 驱动器的代码- 从这个答案SUBST转换为 VB.NET - 仍然没有正确解析完整路径。

这是我正在使用的转换后的代码(我打算稍后在一切正常后进行一些“调整”,但这是当前状态):

我这样称呼我使用创建的驱动器SUBST H: D:\substtest

我的期望是该IsSubstPath()方法应该D:\substtest\0984\CPI.TXT通过realPath变量返回。执行SUBST(不带附加参数)在命令提示符 ( H:\: => D:\substtest) 中正确显示了映射。在调试时检查TestFile对象表明它的Exists()属性返回True,因此文件系统显然知道它在那里。

在这一点上,每次我执行代码时,QueryDosDevice()方法调用都会返回一个值0,尽管我从调用中得到了不同的结果,Marshal.GetLastWin32Error()因为我继续尝试让它工作。

在我的机器上“正确”设置了 -ed 驱动器后,我的第一次尝试SUBST导致Marshal.GetLastWin32Error()返回错误代码1008 - ERROR_NO_TOKEN(“尝试引用不存在的令牌”)。

在链接的 MS 社区线程中的进一步阅读表明,运行SUBST 两次-一次在正常命令提示符下,再次在提升的命令提示符下 -应该使驱动器可用于常规登录用户以及任何提升的用户操作。我在提升的命令提示符下重新运行SUBST,并使用与上面相同的测试代码再次尝试。这一次,Marshal.GetLastWin32Error()返回错误代码6 - ERROR_INVALID_HANDLE ( "The handle is invalid." )。

考虑到这个特定的操作可能取决于系统上实际存在的文件/路径(而不是 .NETIO.FileInfoIO.DirectoryInfo对象),我手动创建了特定的子文件夹和文件来代表我在代码中测试的内容(H:\0984\CPI.TXT)并尝试了再一次(再次,使用与上面相同的代码):

再次,QueryDosDevice()未能正确解析真实路径(返回0),但这次Marshal.GetLastWin32Error()方法返回值0 - ERROR_SUCCESS“操作成功完成。”)。考虑到,也许代码中有一些“缺陷”可能会无意中跳过一个步骤或其他什么,我检查了PathInformation变量 -Text.StringBuilder保存结果的对象QueryDosDevice()- 在中断模式下,但是,可惜它也是空的。

注意:我也尝试使用目录而不是文件,但H:\0984\导致Marshal.GetLastWin32Error()返回值0whileH:\0984导致值6. 根据之前的测试,这一切都是有道理的,但它仍然会导致一个空PathInformation变量(失败)。

阅读所有关于 Interwebz 的文章,似乎很多人SUBST在 Windows 10 下遇到了 -ed 驱动器的各种问题,所以我现在想知道这是否这些意外结果的原因。有没有其他人遇到过这些问题,如果有,您是否能够在代码中解决它们?

如果它很重要(我想它肯定可能),这里有一些额外的细节:

  • 我正在使用 Visual Studio 2017 CE,我的项目正在 .NET Framework 4.7.2 下编译
  • 我要创建SUBST路径的物理驱动器是一对用 NTFS 格式化的 RAID 1 驱动器,并且有足够的空间 (178 GB)。

    注意:我还尝试SUBST为我的 OS 驱动器 ( ) 创建一个 -ed 路径以C:\进行测试,但这会得到与上述相同的结果。

如果我遗漏了任何内容,或者您​​需要进一步澄清,请在评论中告诉我,我会根据需要更新问题。

0 投票
0 回答
48 浏览

batch-file - 从选择的文件夹中创建子驱动器

我是编程世界的新手,并试图制作一个小脚本,我可以在其中选择一个文件夹,该文件夹的名称将有机会使这个选定的文件夹成为子驱动器。

我已经在这个网站上找到的代码非常好,但似乎我缺少很多知识来使它成为一个工作批处理文件。

我拥有的代码是:

我试图替代的文件夹看起来像这样。

这是我想做的第一个选择。我们必须使用不同的品牌,我想在这两个品牌之间进行选择,然后再继续。

选择我拥有的品牌后,有一个文件夹列表,我想从中进行选择,然后替换我选择的文件夹。我将在此“类型”文件夹中添加更多文件夹,因此将来会有“类型 3”“类型 4”等。

例子。

我什至不知道这是否可以通过一个简单的批处理文件实现,但最好问而不是抱歉。

0 投票
1 回答
128 浏览

excel - 将 DOS 批处理文件命令转换为 VBA 函数

我已经创建并正在使用以下函数来映射和缩短网络驱动器的路径长度,使用SUBST命令与实现 ADO 的工具一起使用。

上述功能大部分时间都可以很好地缩短长网络路径,然后将其传递给Application.FileDialog.InitialFilename. 但是,如果一个驱动器(比如 Y:) 已经被映射,那么问题就会随之而来,Application.FileDialog.InitialFilename并且最终用户无法选择所需的文件,但会看到Y:\!

我想做的事 :

  • 查看相关 Drive egY:是否可用。
  • 如果正在使用,Y:请将 的网络路径分配给下一个免费可用的驱动器。
  • 断开连接(删除)Y:
  • 分配Y:给相关目录。

我有下面的批处理文件可以做到这一点,但我不知道如何将此批处理代码转换为 VBA 函数,即类似于上面显示的函数。非常感激任何的帮助。

编辑:

我修改了上面的函数来添加这段代码。问题仅在于sCMD由于不正确的双引号而没有被 WScript.Shell 执行的字符串。

  • 有人可以帮助我使用正确的语法吗?
  • 如果它是我需要映射的本地文件夹,语法将如何变化?

...

0 投票
2 回答
170 浏览

windows - Ansible SUBST 驱动机器范围

我已将 Ansible 设置为使用 WinRM 证书方法连接到 Windows Server 2019。我需要将 D 驱动器映射到简单地镜像 C。使用 SUBST 我可以做SUBST D: C:\但是......

  • 当我使用win_shell远程桌面通过 Ansible 运行命令时,不显示驱动器。
  • 反之亦然:当我使用远程桌面运行命令时,Ansible 的 shell 看不到新的 D 盘。
  • 我尝试使用注册表技巧使映射保持不变,重新启动后,我可以在带有远程桌面的文件资源管理器中看到驱动器,但 PowerShell 和 Ansible 都没有win_shell看到它。

如何使用 Ansible 剧本将 C 映射到 D 机器范围?

0 投票
1 回答
123 浏览

powershell - powershell:错误的符号链接解析

我想我在 PS 中发现了一个错误。

我创建一个新的替代驱动器号:

但PS告诉:

如您所见,目标中的驱动器号是错误的。它是怎么来的?

我的 Windows 版本:

我的PS版本:

如何用ps得到正确的目标?

非常感谢

0 投票
0 回答
34 浏览

python - 使用python替换被网络占用的驱动器号,在资源管理器中得到错误的图标

使用python替换被网络占用的驱动器号,在资源管理器中得到错误的图标

可以通过重启explorer来解决(kill and start),但是我根本不想重启

t_switch == 1用拳头运行代码,运行t_switch == 2,然后打开资源管理器,就可以找到问题了

请根据我的代码帮助解决这个问题,非常感谢

0 投票
0 回答
16 浏览

sympy - sympy:用符号的值替换

先生,

是否可以使用变量的值进行替换?

例子:

x = 符号(“x”)

c = IndexedBase("c")

eq1 = c[0] + c[1]*x+c[2]*x**2

x1 = 2

eq1.subs(x,x1)

没变化。我们如何使用 x1 的值,这里是 2 ?

真挚地。

0 投票
1 回答
25 浏览

subst - 将驱动器替换为另一个名称,并将文件夹替换为该驱动器

我有真正的驱动器 n: 和文件夹 d:\n

  1. 我想暂时将驱动器 n: 更改为 o: 并将文件夹 d:\n 更改为 n:
  2. 让我的员工
  3. 然后回到初始状态(真正的驱动器n:和文件夹d:\n)

制作虚拟驱动器的第一步:可以很容易地像subst o: n:\ 我认为的第二个命令一样,subst N: D:\n但它会抛出错误:无效参数

如何: 我需要从命令提示符以编程方式运行它

原因: 我有大量程序以硬编码方式访问 n:。我想让 d:\n 作为测试环境。

请问有人有解决这个问题的办法吗?