Řez (Unix) - cut (Unix) - Wikipedia
Původní autoři | AT&T Bell Laboratories |
---|---|
Vývojáři | Rozličný open-source a komerční vývojáři |
První vydání | Únor 1985 |
Operační systém | Unix, Unixový, IBM i |
Plošina | Cross-platform |
Typ | Příkaz |
Licence | coreutils: GPLv3 + |
v výpočetní, střih
je příkazový řádek nástroj na Unix a Unixový operační systémy který se používá k extrakci sekcí z každého řádku vstupu - obvykle z a soubor. V současné době je součástí GNU coreutils balíček a BSD Základní systém.
Extrakci úseček lze obvykle provést pomocí bajtů (-b
), postavy (-C
) nebo pole (-F
) oddělené oddělovačem (-d
- znak tabulátoru ve výchozím stavu). V každém případě musí být uveden rozsah, který se skládá z jednoho z N
, N-M,
N-
(N
na konec řádku), nebo -M
(začátek řádku do M
), kde N a M se počítají od 1 (neexistuje nulová hodnota). Od verze 6 je vyvolána chyba, pokud zahrnete nulovou hodnotu. Před tím byla hodnota ignorována a předpokládalo se, že je 1.
Dějiny
střih
je součástí X / Otevřít Průvodce přenositelností od vydání 2 z roku 1987. Byl zděděn do první verze POSIX.1 a Single Unix Specification.[1] Poprvé se objevil v AT&T System III UNIX v roce 1982.[2]
Verze střih
svázaný GNU coreutils napsal David M. Ihnat, David MacKenzie a Jim Meyering.[3]
The střih příkaz byl také přenesen do IBM i operační systém.[4]
Příklady
Předpokládejme soubor s názvem „soubor
"obsahující řádky:
foo: bar: baz: qux: quuxone: two: three: four: five: six: seven alpha: beta: gamma: delta: epsilon: zeta: eta: theta: iota: kappa: lambda: muthe quick brown fox jumps over the líný Pes
Postup výstupu čtvrtého až desátého znaku každého řádku:
$ řez -c 4-10 soubor: bar: ba: dva: thha: beta rychlý
Chcete-li odeslat páté pole na konec řádku každého řádku pomocí znak dvojtečky jako oddělovač pole:
$ střih -d ":" -F 5- souborquuxpět: šest: sedmepsilon: zeta: eta: theta: iota: kappa: lambda: murychlá hnědá liška přeskočí na líného psa
(všimněte si, protože znak dvojtečky není nalezen v posledním řádku je zobrazen celý řádek)
Volba -d
zadán oddělovač jednoho znaku (v příkladu výše je to dvojtečka), který slouží jako oddělovač polí. Volba -F
který určuje rozsah polí zahrnutých do výstupu (zde se pole pohybují od pěti do konce). Volba -d
předpokládá použití možnosti -F
.
Výstup třetího pole každého řádku pomocí mezery jako oddělovače polí:
$ střih -d " " -F 3 souborfoo: bar: baz: qux: quuxjeden dva tři čtyři pět šest sedmalpha: beta: gamma: delta: epsilon: zeta: eta: theta: iota: kappa: lambda: muhnědý
(Všimněte si, že protože znak mezery nebyl nalezen v prvních třech řádcích, jsou zobrazeny celé tyto řádky.)
Oddělení dvou slov s libovolným oddělovačem:
$ čára=process.processid$ střih -d "." -f1 <<< $ řádekproces$ střih -d "." -f2 <<< $ řádekprocesid
Syntax
vyjmout [-b seznam] [-c seznam] [-f seznam] [-n] [-d oddělovač] [-s] [soubor]
Příznaky, které lze použít, zahrnují:
- -b
- Bajty; následující seznam -b specifikuje rozsah bajtů který bude vrácen, např.
řez -b1-66
vrátí prvních 66 bajtů řádku. Poznámka: Pokud se používá ve spojení s -n, Ne vícebajtový znaky budou rozděleny. NNB. -b bude fungovat pouze na vstupních řádcích menších než 1023 bajtů - -C
- Postavy; následující seznam -C určuje rozsah znaků, které budou vráceny, např.
řez -c1-66
vrátí prvních 66 znaků řádku - -F
- Určuje seznam polí oddělených znakem a oddělovač
- seznam
- Čárkami oddělený nebo prázdný oddělený seznam celočíselně označených polí, postupně seřazený. The - indikátor může být dodán jako zkratka, aby bylo možné zahrnout rozsahy polí, např. 4-6 pro rozsahy 4–6 nebo 5- jako zkratka pro pole 5 až do konce atd.
- -n
- Používá se v kombinaci s -b potlačuje rozdělení vícebajtové znaky
- -d
- Oddělovač; znak bezprostředně následující po -d možností je oddělovač polí pro použití ve spojení s -F volba; výchozí oddělovač je záložka. Mezera a další znaky se zvláštním významem v kontextu skořápka při použití musí být podle potřeby citováno nebo uniknuto.
- -s
- Když obejde řádky, které neobsahují žádné oddělovače polí -F je uvedeno, pokud není uvedeno jinak.
- soubor
- Soubor (a v případě potřeby doprovodná cesta), který se má zpracovat jako vstup. Pokud není zadán žádný soubor standardní vstup bude použito.
Viz také
Reference
- ^ Specifikace Single UNIX, Vydání 7 od Otevřená skupina - Referenční příručka a nástroje,
- ^ FreeBSD Obecné příkazy Manuál –
- ^ Linux Obecné příkazy Manuál –
- ^ IBM. „IBM System i verze 7.2 Programování Qshell“ (PDF). Citováno 2020-09-05.
externí odkazy
- Specifikace Single UNIX, Vydání 7 od Otevřená skupina - Referenční příručka a nástroje,
- Softpanorama řezaná stránka.
- Vystřihněte vybraná pole každého řádku souboru Portrét řezu (1) a jeho historické pozadí.