csplit je unixový nástroj určený k rozdělení souboru na několik menších souborů v závislosti na řádcích kontextu.
Příkaz csplit načte soubor a rozdělí ho na n + 1 částí zadaných argumenty arg_1 ... arg_n. Ve výchozím nastavení jsou sekce umístěny v souborech s názvem xx00, ..., xxn; kde n nemůže být větší než 99. Hranice výsledných souborů jsou definovány následovně: od řetězce určeného argumentem arg_(n−1) po řetězec arg_n (pokud n = 1, pak definice jde od začátku soubor).
Tento příkaz přebírá následující argumenty:
Volba | název | Popis |
---|---|---|
-s | Potlačí výstup počtu znaků vytvořených souborů | |
-k | uchovávat soubory | Při chybách nesmaže výstupní soubory |
-F | předpona | Nastavení jiné předpony než xx |
-z | eliminovat prázdné soubory | Ignorujte prázdné výstupní soubory |
-n | číslic | Použití zadaného počtu číslic místo dvou |
Každá šablona může vypadat takto:
Design | Popis |
---|---|
/regex[+/- offset]/ | Vytvoří se soubor, který začíná na aktuálním řádku a pokračuje až do (ale nezahrnuje) řádek obsahující výraz. Za regulárním výrazem může následovat plus nebo mínus offset. |
%regex[+/- offset]% | Podobné jako předchozí, ale soubor není vytvořen pro další sekci. |
číslo řádku | Zkopírujte do vytvořeného souboru až na další řádek (bez něj). |
{číslo} | Opakujte předchozí vzor zadaný početkrát. |
{*} | Opakujte předchozí vzor co nejvícekrát. |
Tento program rozdělí soubor test1 na 3 části.
csplit test1 3Na výstupu získáme velikost vytvořených souborů v bajtech a 2 vytvořené soubory: xx00 a xx01.
Chcete-li soubor rozdělit na tři menší soubory, můžete použít následující regulární výraz:
csplit soubor1 3 { 1 }Po spuštění tohoto programu získáme 3 soubory.