tăiat (Unix)

De la Wikipedia, enciclopedia liberă.
Salt la navigare Salt la căutare

cut (din limba engleză tăiat, tăiat) este o comandă de Unix si Unix- ului de operare sisteme și , mai general al POSIX [1] sisteme , care citește unul sau mai multe fișiere text (sau standard de intrare ) , prin extragerea din fiecare secțiuni de linie, definite în termeni de octeți sau caractere sau câmpuri , care sunt apoi afișate pe ieșirea standard . Este un tip de filtru .

Sintaxă

Sintaxa generală a tăieturii are următoarele trei forme:

 cut -b list [-n] [-] [ file1 [ file2 ...]]
cut -c list [-] [ file1 [ file2 ...]]
cut -f list [ caracter -d] [-s] [-] [ fișier1 [ fișier2 ...]]

Parametrii opționali ai fișierelor indică numele fișierelor text din care se extrag informații. Dacă nu este specificat, datele sunt citite din intrarea standard . Unul dintre parametri poate fi o cratimă (" - ") pentru a indica citirea intrării standard în acel moment.

Linia dublă -- (opțional) indică faptul că următorii parametri nu trebuie considerați opțiuni.

Printre principalele opțiuni se numără:

-b lista
Extrage din linie octeții ale căror indici sunt specificați de parametrul listă .
-c lista
Extrage din linie caracterele ale căror indexuri sunt specificate de parametrul listei .
-f lista
Extrage din linie câmpurile ale căror indexuri sunt specificate de parametrul listei .
-d carattere
Dacă extrageți câmpuri cu opțiunea -f , indică caracterul de utilizat ca separator între câmpuri. Caracterul implicit este caracterul de control al filei .
-n
Dacă extrageți octeți utilizând opțiunea -b și codificarea textului necesită mai mulți octeți pe caracter, se asigură că secvențele de octeți care reprezintă primul și / sau ultimul caracter al unei secțiuni sunt extrase integral.
-s
Dacă extrageți câmpuri cu opțiunea -f , aceasta indică excluderea liniilor care nu conțin caracterul separator (comportamentul implicit de tăiere este de a scoate aceste linii fără modificări).

Parametrul listei de opțiuni -b , -c și -f este o listă cu unul sau mai mulți indici și / sau intervale de indici, separați prin virgule (" , ") sau spații ("   "), care selectează secțiunile care urmează să fie extrase din liniile de date. Fiecare element al listei poate fi:

  • un index numeric, începând de la 1, care indică octetul, caracterul sau câmpul de selectat;
  • o gamă de indici sub forma min - max (de exemplu „ 3-5 ”) care selectează octeții, caracterele sau câmpurile dintre indicii min și max ;
  • o gamă de indici sub forma min - (de exemplu „ 3- ”) care selectează octeții, caracterele sau câmpurile începând de la indexul min până la sfârșitul liniei;
  • o gamă de indici în formă - max (de exemplu „ -5 ”) care selectează octeți, caractere sau câmpuri începând de la începutul liniei până la indicele maxim ;

Ordinea elementelor din listă nu este relevantă și nici repetări sau intersecții, deoarece secțiunile sunt întotdeauna prezentate în ordinea în care apar în liniile de date originale și fără repetări.

Exemple

Extrage primul și al șaselea câmp din /etc/passwd , care folosește caracterul : ca separator de câmp:

 cut -f 1,6 -d: / etc / passwd

Extrage primele zece caractere din fiecare linie provenind din intrarea standard :

 tăiat -c -10

Extrage octeții variind de la a cincea până la a zecea, a șaisprezecea și a douăzecea în continuare a fiecărei linii a fișierului prova.txt :

 cut -b 5-10,16,20- test.txt

Alternative

Capacitățile de extracție ale tăierii sunt oarecum reduse, ceea ce limitează utilizarea acesteia la cele mai simple cazuri; de fapt:

  • nu permite reordonarea și / sau repetarea secțiunilor extrase; [2]
  • nu permite extragerea doar a unei părți a datelor din secțiunile indicate; [2]
  • nu vă permite să specificați o secvență de spații ca separator de câmp (de exemplu, nu este potrivit pentru extragerea datelor din ieșirea comenzii ls ).

Dacă este necesar, puteți apela la scripturi în limbajul AWK sau la utilizarea comenzii sed , care oferă mai multe posibilități în acest sens.

Notă

  1. ^ (EN) cut , pe The Open Group Base Specifications Numărul 6 IEEE Std 1003.1, ediția 2004. Adus la 14 iunie 2008 .
  2. ^ a b Acest lucru poate fi realizat prin efectuarea mai multor treceri pe aceleași fișiere de intrare, pentru a produce fișiere temporare care pot fi apoi unite cu comenzile de asociere și lipire .

Elemente conexe

linkuri externe

Informatică Portal IT : accesați intrările Wikipedia care se ocupă cu IT