Articles of 命令行

使用Windows / DOS的shell /批处理命令,我如何拿一个文件,只保留唯一的行?

说我有一个像这样的文件: apple pear lemon lemon pear orange lemon 我怎么做才能保持独特的线条,所以我得到: apple pear lemon orange 我可以修改原始文件或创build一个新的。 我想有一种方法可以一次扫描原始文件一行,检查该行是否存在于新文件中,然后追加(如果没有)。 我没有在这里处理真正的大文件。

嵌套forfiles:path和扩展名filter

是否有可能嵌套两个forfile命令,以便我可以通过path名和扩展 名进行过滤,然后只对这些双重过滤的文件运行命令? 举例来说,我想要获得所有用户的所有Outlook HTML签名。 我可以做到这一点 forfiles /s /pc:\Users /m *Signatures* /c "cmd /c forfiles /s /p @path /m *.htm" 但是这只会显示文件名,因为这是forfiles默认的调用cmd /c echo @file 。 改变这是行不通的,因为那么我需要在内部的forfiles命令中设置/c -option,它需要设置引号引起双引号: forfiles /s /pc:\Users /m *Signatures* /c "cmd /c forfiles /s /p @path /m *.htm /c "cmd /c echo @path"" 我怎样才能转义内部的引号或使用一些不同的方法来运行所有文件的path和文件扩展名的子string过滤的所有文件? 亲切的问候 sc911 忘记/srecursionsearch[/编辑]

从命令行sorting不同长度的hex数字?

如果我有一个不同长度的hex数字文件,例如 1F b c 我怎样才能从命令行sorting他们? Linux的解决scheme是受欢迎的,但我会使用Windows和Cygwin或gnuwin32。 注意:我显然不能使用SORT'cos,这将使它们保持错误的顺序。

蝙蝠文件移动文件

我想创build一个bat文件,将文件从一个位置移动到一个备份文件夹。 条件是我需要移动父目录内的所有超过30天的文件夹。 文件夹的名称是文件夹的创builddate。 例如:2012年10月17日的所有文件将存在于名为10172012的文件夹中。源文件夹是: C:\Data\DataIn\Processed\10172012 C:\Data\DataIn\Processed\09172012 C:\Data\DataIn\Processed\08172012 所以今天的bat文件应该将文件夹“09172012”,“08172012”移到目标备份文件夹: D:\Backup\Processed\

如何从命令行添加/更新MSI中的属性?

我有一个MSI安装程序,我需要从命令行添加或修改一个简短的文本属性。 这必须在安装程序build立之后完成; 我无法修改产生安装程序的进程。 它也必须从脚本无头执行。 当我说“属性”时,它可能是一个MSI属性,一个在安装时写入registry的值,或者任何其他机制,在运行时可以将这个简短的自定义文本放到已安装的应用程序中。

为什么redirect在pipe路故障的地方工作?

从理论上讲,这两条命令应该是等价的: 1 type tmp.txt | test.exe 2 test.exe < tmp.txt 我有一个涉及#1的过程,多年来,工作得很好; 在去年的某个时候,我们开始用更新版本的Visual Studio编译程序,现在由于input格式错误(见下文)而失败了。 但#2成功(没有例外,我们看到预期的产出)。 为什么#2会在#1失败的地方成功? 我已经能够减lesstest.exe到下面的程序。 我们的input文件每行只有一个标签,并统一使用CR / LF行尾。 所以这个程序不应该写入stderr: #include <iostream> #include <string> int __cdecl main(int argc, char** argv) { std::istream* pIs = &std::cin; std::string line; int lines = 0; while (!(pIs->eof())) { if (!std::getline(*pIs, line)) { break; } const char* pLine = line.c_str(); […]

Liquibase命令行在sql中创builddiff changelog

我实际上在命令行窗口上使用Liquibase,我尝试创build一个代表两个数据库之间的差异的SQL脚本。 不幸的是我只得到XML文件的回报。 你可以帮我吗 ? 我的命令行: liquidbase.bat –driver=com.mysql.jdbc.Driver –url=jdbc:mysql://localhost:3306/base1 –username=root diffChangeLog –referenceUrl=jdbc:mysql://localhost:3306/base2 –referenceUsername=root > test.sql 我在其他论坛看到过类似的问题,但是他没有得到很好的答案( http://forum.liquibase.org/topic/convert-changelog-xml-file-into-sql-file )。 我也看到一些从updateSQL cmd获取sql文件的参数,但从来没有为diffChangeLog。 xml反馈示例: <?xml version="1.0" encoding="UTF-8" standalone="no"?> <databaseChangeLog xmlns="http://www.liquibase.org/xml/ns/dbchangelog" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.liquibase.org/xml/ns/dbchangelog http://www.liquibase.org/xml/ns/dbchangelog/dbchangelog-2.0.xsd"> <changeSet author="user (generated)" id="1370443156612-1"> <createTable tableName="test"> <column name="a" type="INT"/> </createTable> </changeSet> <changeSet author="user (generated)" id="1370443156612-2"> <addColumn tableName="articles"> <column name="date_debut" type="TEXT"> <constraints nullable="false"/> </column> </addColumn> </changeSet> 感谢提前。

从Git Bash调用记事本++

嗨,大家好,我在Windows 7中使用msysgit 。我如何从Git Bash调用记事本++,就像我们用默认的记事本一样。 比如说 name @ usename notepad textfile.txt 相反,我想要文件打开记事本++ 注意:我已经添加了记事本++到我的PATH,但仍然无法从命令行调用它。 编辑 我在.gitconfig – >中试过 [别名] notepad ='C:/ Program Files / Notepad ++ / notepad ++。exe' 但不工作。

如何find映射驱动器的可用空间的百分比?

是否可以编程方式查找映射驱动器中的可用空间? 如何使用ms-dos查找驱动器中可用空间的百分比。 在我们的硬盘上find驱动器的空闲空间可能很容易,但我需要find映射驱动器的空闲空间。 我已经在我的系统中映射了一些文件服务器。 在“我的电脑”中可以看到这一点,但是如何在命令提示符下显示呢?

Windows无法将parameter passing给Python脚本

在py_script.py中: import os import sys l = len(sys.argv) if l == 1: print 'no args' else: if l > 1: print 'first arg is %s'%sys.argv[1] if l > 2: print 'second arg is %s'%sys.argv[2] 现在正在命令行上,在我的winXP平台上: d:\path\py_script.py 1 2 产量 first arg is 1 second arg is 2 但我的Win7平台上 no args 如果我做 d:\path\python py_script.py 1 2 […]