comando cut Clicca QUI per vedere il messaggio nel forum |
| Laüra |
Ciao a tutti!
Non riesco ad usare il comando cut con ls..... ho fatto varie prove ma l'output rimane sempre lo stesso...qualcuno sa spiegarmi cosa sbaglio?
Per esempio:
se faccio du -s /usr/bin | cut -f 1 ottengo il risultato atteso
ma se faccio ls -l /usr/bin | cut -f 4 l'output di ls non cambia.
Grazie |
| n3o |
ls -l /usr/bin | tr -s ' ' ' ' | cut -d ' ' -f 4
Di norma cut prende come separatori i blank (in du le colonne sono separate da tab, quindi tutto ok)
In ls -l purtroppo i campi sono separati da spazi ma in un numero variabile non predicibile a priori, quindi l'unico modo è applicare all'output tr -s ' ' ' ' che comprime tutti gli spazi contigui in un solo spazio e poi cut -d ' ' - f 4 che estrae la quarta colonna specificando il separatore come spazio.
Giusto per capire meglio tr, funziona anche:
ls -l /usr/bin | tr -s ' ' ':' | cut -d ':' -f 4
o qualsiasi carattere sostitutivo degli spazi contigui
Prova i comandi passo passo e consulta i manuali per capire bene le opzioni! |
|
|
|