Как да комбинирате или обедините множество текстови файлове

Има няколко случая, когато може да се наложи да обедините няколко текстови файла в един текстов файл. Например, може да получите компактдиск, който съдържа стотици текстови файлове, всички в различни директории, които трябва да комбинирате в един файл за импортиране в Excel и т.н.

Също така е полезно, ако имате мрежови регистрационни файлове, сървърни регистрационни файлове или архивни регистрационни файлове, които искате да комбинирате за целите на извличане на данни или анализ на данни. Има няколко различни начина, по които можете да обедините текстови файлове заедно и резултатите са малко по-различни в зависимост от избрания от вас метод.

В тази статия ще пиша за няколко начина за комбиниране на текстови файлове, така че ако един метод не работи твърде добре, можете да опитате нещо друго.

Метод 1 - Команден ред

Ако сте добре с помощта на командния ред, тогава има няколко прости команди, които можете да използвате, за да обедините бързо цял куп текстови файлове. Предимството на използването на командния ред е, че не е нужно да инсталирате програми на трети страни. Ако искате малко пояснение за използването на командния ред, вижте моето ръководство за начинаещи за използване на командния ред(beginner’s guide to use the command prompt) .

Освен това, тъй като командният ред може да приема множество параметри, наистина можете да създадете доста сложна команда за филтриране и сортиране през кои файлове искате да включите в процеса на присъединяване. Ще обясня най-простата команда, но също така ще се впусна в няколко примера, за да ви покажа как да правите по-сложните неща.

Първо, отворете Windows Explorer и отидете в директорията, където се намират текстовите файлове. Ако файловете се съхраняват в много подпапки, отидете до родителската директория. Сега натиснете и задръжте CTRL + SHIFT и след това щракнете с десния бутон върху всяко празно място в прозореца на Explorer .

отворете командния прозорец тук

Това ще отвори команден прозорец, който вече е зададен в директорията, в която сте били. Сега всичко, което трябва да направим, е да въведете командата. Както можете да видите по-горе, имам три текстови документа в папката заедно с няколко папки. Ако искам само да комбинирам текстовите файлове в тази една папка, бих издал тази команда:

for %f in (*.txt) do type “%f” >> c:\Test\output.txt

На език за кодиране, това е прост цикъл FOR , който преминава през всички файлове, завършващи с (FOR).TXT и ги извежда във файл, наречен output.txt .

комбинирайте txt cmd

Както можете да видите по-горе, цикълът просто изпълнява отделна команда за всеки текстов файл, който намира в директорията. Имайте предвид, че ако имате текстов файл, но той има различно разширение като .log или .dat и т.н., тогава можете просто да промените стойността *.txt в командата. Също така си струва да се отбележи, че изходът трябва да бъде на различно място от текущата директория, в противен случай той ще добави изходния файл към себе си, тъй като той също е текстов файл.

Сега да кажем, че имате текстови файлове, които се намират не само в една папка, а в много подпапки. В този случай можем да добавим параметър към командата, който ще й каже да търси рекурсивно текстови файлове във всяка подпапка на текущата директория.

for /R %f in (*.txt) do type “%f” >> c:\Test\output.txt

Ще забележите параметъра /R веднага след израза for. Сега, когато стартирам командата, ще видите, че тя намира няколко допълнителни текстови файла в трите директории, които са в една и съща директория.

обединяване на текстови файлове

Както е обикновено с командния ред, всъщност има друга команда, която ви позволява да направите същото като оператора FOR  по-горе. Командата всъщност е много по-проста и ако работи добре за вас, тогава не се колебайте да я използвате вместо горния метод.

copy *.txt output.txt

копирайте обединени текстови файлове

Тази команда работи добре, но няма толкова много опции, колкото предишната команда. Например, няма да ви позволи да търсите рекурсивно в подпапки.

Метод 2 – TXTCollector

TXTCollector е безплатен инструмент за сливане на текстови файлове с приличен набор от функции. Той е много лесен за използване и може да бъде конфигуриран да работи по няколко различни начина.

комбинирайте текстови файлове

Първо, въведете или копирайте и поставете пътя на папката в полето Папка(Folder) в горната част или просто щракнете върху бутона Преглед на папки(Browse Folders)  и изберете папката с текстовите файлове. След това можете да изберете кой тип файлове искате да комбинирате.

По подразбиране TXTCollector ще търси всички TXT файлове и ще ги комбинира. Можете обаче да изберете от списъка и да комбинирате или обедините множество CSV , BAT , HTM , LOG , REG , XML и INI файлове също в един!

Поставете отметка в квадратчето Включване на подпапки(Include subfolders) , ако искате TXTCollector рекурсивно да разглежда всяка подпапка на основната папка. TXTCollector ще ви покаже точно колко файла е намерил в директорията.

обединяване на txt файлове

След това можете да изберете разделител, който ще се показва между всеки файл, който се комбинира. Това е хубава функция, която не получавате с метода на командния ред. Можете да изберете от падащото меню или просто да въведете каквото искате в полето.

По подразбиране програмата ще постави името на директорията, името на файла и разделителя между всеки файл. Ако искате да комбинирате файловете непрекъснато без прекъсване между всеки файл, отметнете Без разделител(No Separator) , Без име на файл( No Filename) и Без връщане на карета(No Carriage Returns) .

комбинирайте множество txt файлове

След това ще имате избор дали да добавите интервал между файловете или не. Страхотното при TXTCollector е, че наистина можете да го персонализирате. Ако щракнете върху връзката в долната част, наречена Extensions and Separators , можете да добавите свои собствени разширения към TXTcollector .

Редактирайте файла extensions.txt , намиращо се в директорията с данни на приложението (extensions.txt)TXTCollector . Имайте предвид, че TXTcollector обработва само обикновени текстови файлове, без значение какво разширение се използва. Следователно, той не може да комбинира множество XLS файлове, например, освен ако не са запазени като обикновен текст.

Единственото ограничение на програмата е, че може да комбинира само 32 765 текстови файла наведнъж. Ако имате повече от това, можете да комбинирате толкова много в едно и след това да комбинирате големия с повече по-малки, до 32 765!

Като цяло, много просто, но мощно безплатно приложение за комбиниране на множество текстови файлове. Надяваме се(Hopefully) , че тези два метода ще работят за повечето хора. Ако сте попаднали в ситуация, която е по-сложна, не се колебайте да публикувате коментар и аз ще се опитам да помогна.

Също така, не забравяйте да разгледате другата ми публикация за това как да комбинирате множество презентации на PowerPoint(combine multiple PowerPoint presentations) . Наслади се!



About the author

Аз съм компютърен програмист и съм от над 15 години. Уменията ми са в разработването и поддържането на софтуерни приложения, както и в предоставянето на техническа поддръжка за тези приложения. Също така съм преподавал компютърно програмиране на гимназисти и в момента съм професионален инструктор.



Related posts