Articles of 命令行

Windows批处理编程:间接/嵌套variables评估

我们有一个列出一堆path的文本文件,以及一个从这个文件中读取行的batch file。 例如,TargetFolders.txt可能包含以下行: %ProgramFiles%\Acme\FooBar %VersionNumber% 当然,当我们从文本文件(使用FOR命令)读取这一行时,variables%%我接收实际的行文本,使用%符号而不是replacevariables值。 所以, SET VersionNumber=7.0 FOR /F "eol=; delims=" %%I IN (TargetFolders.txt) DO ( echo Folder: %%I ) 打印 Folder: %ProgramFiles%\Acme\FooBar %VersionNumber% 如何使其取代实际的variables值,以便打印 Folder: C:\Program Files\Acme\FooBar 7.0 ?

命令行打印文件名输出文件

在Linux中这似乎很容易,但是我试图将一个目录及其子目录中的* .pdf文件的名称打印到输出文件。 我在我的Windows机器上安装了perl。 什么是简单的方法来做到这一点? 谢谢,杰克

在批处理脚本中实现“哪个”命令

我试图制作一个类似于which脚本的脚本。 所以我想检查这个命令是内部的还是外部的,或者两者兼而有之。 我试图执行程序,但是当程序(例如.exe)不正确我的程序退出时出现错误,所以我试图打电话给这个程序的help 。 但是现在,如果我尝试检查示例echo并在我当前的目录中有echo.exe我得到它是外部命令,但不是内部。 所以我的问题是如何做到这一点。 如何检查这个程序是内部的还是外部的。 谢谢。 这是我的代码: @echo off setlocal enabledelayedexpansion if "%1"=="" goto help :start if not "%1"=="" ( shift if "%1"=="/?" goto help goto :start ) set arg=%* for %%a in ("%pathext:;=" "%") do ( echo %arg%|findstr /E /I %%a >nul rem If file was given with extension if not ERRORLEVEL […]

batch file从文本文件中总结数字,并将总值写入文本文件

我在文件夹1中有300个文本文件,在文件夹2中有300个文本文件 下面是一个文本文件的示例内容 india,car,10 uk,car,20 us,car,50 我想总结第三列,并将其写入相同的文本文件。 例, for /f "tokens=3 delims=," %%a in (folder1\textfile1.txt) do set /a total+=%%a echo %total% >folder1\textfile1.txt 上面的代码将在textfile1.txt中写入80 请告诉如何使用batch file对所有300个文本文件执行相同操作。

Lynda Ruby on Rails 4基本培训无法启动服务器

我正在通过关于Lynda Ruby on Rails 4基本培训的教程,并且所有的工作都很顺利,直到我input:rails server 我已经看到了Ruby on Rails – 无法加载这样的文件 – mysql2 / 2.2 / mysql2(LoadError),这并不能解决我的问题,我仍然有相同的错误。 然后这个大错误出现: C:\Users\Caroline\Sites\simple_cms>rails server C:/Ruby22/lib/ruby/gems/2.2.0/gems/mysql2-0.3.18-x86- mingw32/lib/mysql2/mysql2.r b:2:in `require': cannot load such file — mysql2/2.2/mysql2 (LoadError) from C:/Ruby22/lib/ruby/gems/2.2.0/gems/mysql2-0.3.18-x86-mingw32/lib/my sql2/mysql2.rb:2:in `<top (required)>' from C:/Ruby22/lib/ruby/gems/2.2.0/gems/mysql2-0.3.18-x86-mingw32/lib/my sql2.rb:31:in `require' from C:/Ruby22/lib/ruby/gems/2.2.0/gems/mysql2-0.3.18-x86-mingw32/lib/my sql2.rb:31:in `<top (required)>' from C:/Ruby22/lib/ruby/gems/2.2.0/gems/bundler-1.10.4/lib/bundler/runti me.rb:76:in `require' from C:/Ruby22/lib/ruby/gems/2.2.0/gems/bundler-1.10.4/lib/bundler/runti me.rb:76:in `block (2 levels) […]

PowerShell从命令行参数中剥离双引号

最近我一直在使用PowerShell中的GnuWin32时遇到一些麻烦,只要涉及到双引号。 经过进一步的调查,看来PowerShell从命令行参数中剥离了双引号,即使正确转义也是如此。 PS C:\Documents and Settings\Nick> echo '"hello"' "hello" PS C:\Documents and Settings\Nick> echo.exe '"hello"' hello PS C:\Documents and Settings\Nick> echo.exe '\"hello\"' "hello" 请注意,当传递给PowerShell的echo cmdlet时,双引号是存在的,但是当作为parameter passing给echo.exe时 ,除非用反斜线转义(即使PowerShell的转义字符是反引号,而不是反斜线),否则双引号将被剥离。 这对我来说似乎是一个错误。 如果我将正确的转义string传递给PowerShell,那么PowerShell应该处理任何转义可能是必要的,但是它调用该命令。 这里发生了什么? 目前,解决方法是根据这些规则来逃避命令行参数(这些规则似乎被PowerShell用来调用.exe文件的CreateProcess API调用所使用): 要传递一个双引号,用反斜线转义: \" – > " 要传递一个或多个反斜杠,然后加双引号,用另一个反斜杠转义每个反斜杠,然后转义引号: \\\\\" – > \\" 如果后面没有双引号,则反斜杠不需要转义: \\ – > \\ 请注意,进一步转义双引号可能需要将Windows API转义string中的双引号转义为PowerShell。 下面是一些使用GnuWin32的echo.exe的例子: PS C:\Documents and Settings\Nick> echo.exe […]

如何从命令行获取PID,通过用户名和图像名称过滤

我需要能够使用命令行从正在运行的进程(cmd.exe)获取PID。 问题是有两个cmd.exe运行。 一个是在用户名SYSTEM下,另一个是compUser。 有没有办法,我可以抓住compUser cmd.exe的PID? 编辑:这需要进一步的解释。 我正在从batch file中执行此操作。 我在batch file中调用的一个调用会启动一个不会死的cmd.exe。 所以杀死cmd.exe会很简单: taskkill /F /IM cmd.exe /FI "username eq compUser" 问题是我所在的batch file正在由用户名compUser下的另一个cmd.exe实例处理。 我试图做的是从第一个cmd.exe获取PID,然后再启动第二个cmd.exe。 这样我可以使用这个命令: taskkill /F /IM cmd.exe /FI "username eq compUser" /FI "PID neq [orignal task's PID]"

如何将一个variables设置为Windows上父目录的path?

再次用命令行挣扎,我发现我可以将当​​前工作目录存储在variables中,如下所示: SET current=%cd% 我如何设置父项? SET parent=%..%不起作用,因为它回声%..% 基本上,使用以下内容调用批处理脚本C:\a\b\myscript.bat : @echo off set current=%cd% echo %current% 打印C:\a\b ,我想设置一个variablesparent以便它将打印C:\a而不更改当前的工作目录为.. 这可能吗?

CLI中的JUnittesting等价物

我已经写了一些不完全具有主要方法的代码。 但是我想知道代码是否有问题。 基本上我可以在Eclipse中使用JUnittesting用例(我正在使用linux)。 但是我正处于一个需要在Windows中testing的情况,这个版本目前没有Eclipse。 所以我留下了select在CMD(如果可能的话)。 在cmd中,JUnittesting(Eclipse)等价于什么?

使用Python在Firefox(win)选项卡上启动网页

我试图用这种方式启动一个新的选项卡中的网站url,但它没有在这两个方面的工作: 方法1: os.system('C:\Program Files\Mozilla Firefox\Firefox.exe -new-tab http://www.google.com/'); 和方法2: os.startfile('C:\Program Files\Mozilla Firefox\Firefox.exe -new-tab http://www.google.com/'); 如果我不添加参数(-new-tab http://www.google.com/ ),它可以工作,打开默认页面。