我在一个目录中有50到60个文件,我需要定期连接到一个文件中。
我想过使用notepad ++认为可能有一个插件可以帮助但却找不到它。
还有其他想法吗?
答案 0 :(得分:81)
假设这些是文本文件(因为你使用的是notepad ++)并且你在Windows上,你可以设计一个简单的批处理脚本来将它们连接在一起。
例如,在包含所有文本文件的目录中,执行以下命令:
for %f in (*.txt) do type "%f" >> combined.txt
这会将匹配* .txt的所有文件合并到一个名为combined.txt的文件中。
了解更多信息:
答案 1 :(得分:63)
使用Windows“复制”命令。
C:\Users\dan>help copy
Copies one or more files to another location.
COPY [/D] [/V] [/N] [/Y | /-Y] [/Z] [/L] [/A | /B ] source [/A | /B]
[+ source [/A | /B] [+ ...]] [destination [/A | /B]]
source Specifies the file or files to be copied.
/A Indicates an ASCII text file.
/B Indicates a binary file.
/D Allow the destination file to be created decrypted
destination Specifies the directory and/or filename for the new file(s).
/V Verifies that new files are written correctly.
/N Uses short filename, if available, when copying a file with
a non-8dot3 name.
/Y Suppresses prompting to confirm you want to overwrite an
existing destination file.
/-Y Causes prompting to confirm you want to overwrite an
existing destination file.
/Z Copies networked files in restartable mode.
/L If the source is a symbolic link, copy the link to the
target
instead of the actual file the source link points to.
The switch /Y may be preset in the COPYCMD environment variable.
This may be overridden with /-Y on the command line. Default is
to prompt on overwrites unless COPY command is being executed from
within a batch script.
**To append files, specify a single file for destination, but
multiple files for source (using wildcards or file1+file2+file3
format).**
所以在你的情况下:
copy *.txt destination.txt
将所有.txt文件按字母顺序连接到destination.txt
感谢您的提问,我学到了新的东西!
答案 2 :(得分:11)
copy *.txt all.txt
这会将文件夹的所有文本文件连接到一个文本文件all.txt
如果您有任何其他类型的文件,例如sql文件
copy *.sql all.sql
答案 3 :(得分:5)
是的,一个名为“combine”的插件可用于记事本++。链接:。>> Combine Plugin for Notepad++
您可以通过插件管理器安装它。这个插件的额外好处是:“你可以在合并时保持文件的顺序,它是根据打开的文件的顺序打开的(见标签)”。
答案 4 :(得分:1)
你可以像这样使用powershell脚本
$sb = new-object System.Text.StringBuilder
foreach ($file in Get-ChildItem -path 'C:\temp\xx\') {
$content = Get-Content -Path $file.fullname
$sb.Append($content)
}
Out-File -FilePath 'C:\temp\xx\c.txt' -InputObject $sb.toString()
答案 5 :(得分:1)
在Windows中,我在批处理文件中使用一个简单的命令,并使用计划任务将所有信息保存在一个文件中。请务必选择结果文件的其他路径,否则您将拥有重复的数据。
类型 PathToOriginalFiles \ *。扩展程序> AnotherPathToResultFile \ NameOfTheResultFile.Extension
如果你需要加入大量的csv文件,一件好事就是只在一个名为 0header.csv 的文件或其他名称中设置标题,这样就可以了总是列表中的第一个文件,并确保编程所有其他csv文件不包含标题。
答案 6 :(得分:1)
如果您想在Notepad ++上打开文件,可以使用Combine插件: http://www.scout-soft.com/combine/
答案 7 :(得分:0)
有一个方便的第三方工具,名为 FileMenu工具,它提供了几个右键单击工具作为Windows资源管理器扩展。
其中一个是拆分文件 / 加入零件,它确实会撤消您要查找的内容。
在http://www.lopesoft.com/en/filemenutools处查看。 当然,它只是Windows,因为Unix环境已经有很多工具。
答案 8 :(得分:0)
我知道这是一个旧帖子,但我找到了它然后发现有人建议使用Total Mail Converter。我能够将带有2k .msg文件的文件夹转换为.txt。它还允许您转换为PDF和其他流行格式。
这是一个很棒的工具,我很高兴有人建议,因为它会节省我好几天。
仅供参考 - 我的项目是将.msg文件合并到一个文本文件中,以便我可以运行脚本从文件中提取某些信息(即:电子邮件和链接)。我可以使用一个文件而不是2k文件。
答案 9 :(得分:0)
我在windows powershell上使用了这个脚本:
ForEach ($f in get-ChildItem *.sql) { type "$f" >> all.sql }