Overzicht
cut verwerkt tekstgegevens regel voor regel om opgegeven velden, tekens of bytebereiken te extraheren. Het is zeer efficiënt voor eenvoudige data-extractie en transformatietaken.
Belangrijkste Kenmerken
- Veld (kolom) extractie (-f optie)
- Teken (byte) extractie (-c, -b optie)
- Aangepaste scheidingstekens specificeren (-d optie)
- Output zonder geselecteerde delen (--complement optie)
Belangrijkste Opties
Het cut commando biedt verschillende opties voor het extraheren van specifieke delen uit tekst.
Extractiemethoden
Output Controle
Gegenereerde opdracht:
Probeer de opdrachtcombinaties.
Uitleg:
`cut` Voer het commando uit.
Combineer deze opties en voer de opdracht virtueel uit met de AI.
Gebruiksvoorbeelden
Voorbeelden van hoe tekstgegevens divers kunnen worden verwerkt met het cut commando.
Extraheer het eerste en derde veld uit een door komma's gescheiden bestand
echo "apple,banana,cherry,date" > data.csv
cut -d',' -f1,3 data.csv
Extraheert het eerste en derde veld uit het bestand data.csv met een komma (,) als scheidingsteken.
Extraheer het eerste tot derde veld uit tekst gescheiden door spaties
echo "Field1 Field2 Field3 Field4" | cut -d' ' -f1-3
Extraheert het eerste tot derde veld uit tekst met spaties als scheidingsteken. (Opmerking: voor meerdere spaties kan `awk` geschikter zijn.)
Extraheer de eerste 5 tekens uit een bestand
echo "Hello World" > sample.txt
cut -c1-5 sample.txt
Extraheert de eerste tot vijfde teken uit elke regel van het bestand sample.txt.
Output van /etc/passwd bestand zonder gebruikersnaam en shell
cut -d: -f1,7 --complement /etc/passwd
Extraheert alle velden behalve het eerste (gebruikersnaam) en het zevende (shell) veld uit het /etc/passwd bestand, dat gescheiden is door dubbele punten (:).
Extraheer alleen bestandsrechten en bestandsnaam uit de output van `ls -l`
ls -l | tr -s ' ' | cut -d' ' -f1,9
Extraheert het eerste (rechten) en negende (bestandsnaam) veld uit de output van het `ls -l` commando. Hier wordt `tr -s ' '` gebruikt om meerdere spaties te behandelen als één enkele spatie.
Tips & Aandachtspunten
Het cut commando is eenvoudig en snel, maar heeft beperkingen omdat het geen reguliere expressies of complexe conditionele logica kan verwerken. Voor complexere tekstverwerking kunt u tools zoals `awk` of `sed` overwegen.
Belangrijkste Tips
- **Verwerking van spatie-scheidingstekens:** Bij het verwerken van velden gescheiden door meerdere spaties, herkent `cut -d' '` slechts enkele spaties. Het gebruik van `awk` zoals `awk '{print $1, $3}'` kan effectiever zijn.
- **Geen ondersteuning voor reguliere expressies:** `cut` ondersteunt geen reguliere expressies. Gebruik `grep` en `awk` samen voor patroonherkenning.
- **Gebruik van pipes:** `cut` is zeer krachtig voor het filteren van de output van andere commando's. Het wordt vaak gebruikt in combinatie met pipes, zoals `ls -l | cut -d' ' -f1,9`.
- **Bereik specificatie:** In de opties `-f` of `-c` betekent `N-` van N tot het einde, en `-N` betekent van het begin tot N.