我在 Setup 文件夹中有很多这样的文件夹:
PN 1001-1.22 abe
PN 1001-1.12 dfe
PN 1001-1.33 fgh -
PN 1001-1.01 ijk
PN 1001-1.37 lmn
PN 1001-1.02 opq
这些文件夹中的每一个都有一个名为 install 的子文件夹,其中包含一个可执行文件。
我想将可执行文件复制到 .\Setup 文件夹。所以我使用这样的脚本:
for /d %%G in (Setup\*) do (
xcopy "%%G\Installation\*.exe" .\Setup
)
但除了 PN 1001-1.33 fgh - 文件夹外,该脚本工作正常。必须是 - on 端。我得到错误:
File not found - *.exe
我该如何解决这个问题?如果那是唯一的方法,我什至可以去掉 - on end?
我在 Windows 7 上运行。
最佳答案
以 - 结尾的文件或文件夹名称应该不是问题。我怀疑您在错误的文件夹名称中有尾随空格。
Windows 通常不允许以空格或句点结尾的文件或文件夹名称,但有一些模糊的方法来创建它们。一旦创建,它们就会造成严重破坏,因为许多命令无法使用这些通常非法的名称。
为了证明这个理论,在你的 Setup 文件夹中执行以下命令:
for /d %F in ("PN 1001-1.33 fgh -*") do @echo "%F"
我相信您会看到如下结果:"PN 1001-1.33 fgh - "。注意尾随空格。
某些命令可以通过在完整路径前加上 \\?\ 来处理这些问题名称。不幸的是,RENAME 不是其中之一,并且 MOVE 也不允许您重命名文件夹。
我建议您将所有文件和文件夹从问题文件夹中移出到一个正确命名的文件夹中,然后删除有问题的文件夹。但是 XCOPY 和 ROBOCOPY 不能与 \\?\ 一起使用,所以移动子文件夹有点棘手。
以下脚本应该有所帮助,但您必须修复“root”、“old”和“new”变量以匹配您的特定根路径和问题文件夹名称:
setlocal
set "root=c:\full\path\to\your\Setup"
set "old=%root%\PN 1001-1.33 fgh - "
set "new=%root%\PN 1001-1.33 fgh"
md "%new%"
move "\\?\%old%\*" "%new%"
for /d %%F in ("\\?\%old%\*") do move "%%F" "%new%"
rd "\\?\%old%"
运行后,问题文件夹应该已有效重命名,删除“-”后缀。
可以在 https://msdn.microsoft.com/en-us/library/windows/desktop/aa365247(v=vs.85).aspx 找到定义文件和文件夹名称规则的 Microsoft 文章
关于windows - 如果名称中有 - 则 for/d 迭代文件夹不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31269101/
我需要在客户计算机上运行Ruby应用程序。通常需要几天才能完成(复制大备份文件)。问题是如果启用sleep,它会中断应用程序。否则,计算机将持续运行数周,直到我下次访问为止。有什么方法可以防止执行期间休眠并让Windows在执行后休眠吗?欢迎任何疯狂的想法;-) 最佳答案 Here建议使用SetThreadExecutionStateWinAPI函数,使应用程序能够通知系统它正在使用中,从而防止系统在应用程序运行时进入休眠状态或关闭显示。像这样的东西:require'Win32API'ES_AWAYMODE_REQUIRED=0x0
我希望我的UserPrice模型的属性在它们为空或不验证数值时默认为0。这些属性是tax_rate、shipping_cost和price。classCreateUserPrices8,:scale=>2t.decimal:tax_rate,:precision=>8,:scale=>2t.decimal:shipping_cost,:precision=>8,:scale=>2endendend起初,我将所有3列的:default=>0放在表格中,但我不想要这样,因为它已经填充了字段,我想使用占位符。这是我的UserPrice模型:classUserPrice回答before_val
我想向我的Controller传递一个参数,它是一个简单的复选框,但我不知道如何在模型的form_for中引入它,这是我的观点:{:id=>'go_finance'}do|f|%>Transferirde:para:Entrada:"input",:placeholder=>"Quantofoiganho?"%>Saída:"output",:placeholder=>"Quantofoigasto?"%>Nota:我想做一个额外的复选框,但我该怎么做,模型中没有一个对象,而是一个要检查的对象,以便在Controller中创建一个ifelse,如果没有检查,请帮助我,非常感谢,谢谢
如果您尝试在Ruby中的nil对象上调用方法,则会出现NoMethodError异常并显示消息:"undefinedmethod‘...’fornil:NilClass"然而,有一个tryRails中的方法,如果它被发送到一个nil对象,它只返回nil:require'rubygems'require'active_support/all'nil.try(:nonexisting_method)#noNoMethodErrorexceptionanymore那么try如何在内部工作以防止该异常? 最佳答案 像Ruby中的所有其他对象
这可能是个愚蠢的问题。但是,我是一个新手......你怎么能在交互式rubyshell中有多行代码?好像你只能有一条长线。按回车键运行代码。无论如何我可以在不运行代码的情况下跳到下一行吗?再次抱歉,如果这是一个愚蠢的问题。谢谢。 最佳答案 这是一个例子:2.1.2:053>a=1=>12.1.2:054>b=2=>22.1.2:055>a+b=>32.1.2:056>ifa>b#Thecode‘if..."startsthedefinitionoftheconditionalstatement.2.1.2:057?>puts"f
我有一个这样的哈希数组:[{:foo=>2,:date=>Sat,01Sep2014},{:foo2=>2,:date=>Sat,02Sep2014},{:foo3=>3,:date=>Sat,01Sep2014},{:foo4=>4,:date=>Sat,03Sep2014},{:foo5=>5,:date=>Sat,02Sep2014}]如果:date相同,我想合并哈希值。我对上面数组的期望是:[{:foo=>2,:foo3=>3,:date=>Sat,01Sep2014},{:foo2=>2,:foo5=>5:date=>Sat,02Sep2014},{:foo4=>4,:dat
似乎无法为此找到有效的答案。我正在阅读Rails教程的第10章第10.1.2节,但似乎无法使邮件程序预览正常工作。我发现处理错误的所有答案都与教程的不同部分相关,我假设我犯的错误正盯着我的脸。我已经完成并将教程中的代码复制/粘贴到相关文件中,但到目前为止,我还看不出我输入的内容与教程中的内容有什么区别。到目前为止,建议是在函数定义中添加或删除参数user,但这并没有解决问题。触发错误的url是http://localhost:3000/rails/mailers/user_mailer/account_activation.http://localhost:3000/rails/mai
我有一些代码在几个不同的位置之一运行:作为具有调试输出的命令行工具,作为不接受任何输出的更大程序的一部分,以及在Rails环境中。有时我需要根据代码的位置对代码进行细微的更改,我意识到以下样式似乎可行:print"Testingnestedfunctionsdefined\n"CLI=trueifCLIdeftest_printprint"CommandLineVersion\n"endelsedeftest_printprint"ReleaseVersion\n"endendtest_print()这导致:TestingnestedfunctionsdefinedCommandLin
我在用Ruby执行简单任务时遇到了一件奇怪的事情。我只想用每个方法迭代字母表,但迭代在执行中先进行:alfawit=("a".."z")puts"That'sanalphabet:\n\n#{alfawit.each{|litera|putslitera}}"这段代码的结果是:(缩写)abc⋮xyzThat'sanalphabet:a..z知道为什么它会这样工作或者我做错了什么吗?提前致谢。 最佳答案 因为您的each调用被插入到在固定字符串之前执行的字符串文字中。此外,each返回一个Enumerable,实际上您甚至打印它。试试
如果我使用ruby版本2.5.1和Rails版本2.3.18会怎样?我有基于rails2.3.18和ruby1.9.2p320构建的rails应用程序,我只想升级ruby的版本,而不是rails,这可能吗?我必须面对哪些挑战? 最佳答案 GitHub维护apublicfork它有针对旧Rails版本的分支,有各种变化,它们一直在运行。有一段时间,他们在较新的Ruby版本上运行较旧的Rails版本,而不是最初支持的版本,因此您可能会发现一些关于需要向后移植的有用提示。不过,他们现在已经有几年没有使用2.3了,所以充其量只能让更