Abbiamo già discusso del comando cat di Linux in uno dei nostri tutorial precedenti. Come forse saprai, il comando cat viene utilizzato principalmente per visualizzare i contenuti dei file nell'output. Tuttavia, ciò di cui potresti non essere a conoscenza è che esiste un comando che fa esattamente l'opposto di ciò che fa cat.
Lo strumento in questione è tac e in questo tutorial ne discuteremo le basi usando alcuni esempi di facile comprensione. Ma prima di farlo, vale la pena ricordare che tutti gli esempi in questo articolo sono stati testati su una macchina Ubuntu 16.04 LTS.
Comando Linux tac
Tac è l'opposto di cat, nel senso che l'output che produce è presentato in modo che venga visualizzata prima l'ultima riga, poi la penultima riga e così via. Di seguito è riportata la sintassi dello strumento:
tac [OPTION]... [FILE]...
Ed ecco cosa dice la pagina man di tac a riguardo:
Write each FILE to standard output, last line first. With no FILE, or when FILE is -, read
standard input.
Di seguito sono riportati alcuni esempi in stile domande e risposte che dovrebbero darti una buona idea di come funziona lo strumento.
Q1. Come usare tac?
Semplice, basta eseguire il comando 'tac' con un nome file come input.
tac [filename]
Ad esempio:
tac file2
Quindi puoi vedere che l'output prodotto da tac è esattamente l'opposto di quello prodotto da cat.
Q2. Come fare in modo che tac utilizzi un separatore personalizzato (non una nuova riga)?
Per questo, dovrai usare l'opzione -s. Ad esempio, il seguente comando
echo "1,2" | tac
Ha prodotto questo output:
1,2
Questo perché newline è il separatore predefinito per tac.
Tuttavia, il comando seguente:
echo "1,2" | tac -s ,
produce il seguente output:
2
1,
Questo perché ora il separatore è stato cambiato.
Q3. Come modificare la posizione del separatore?
Se vuoi che tac alleghi il separatore prima invece che dopo, usa l'opzione -b.
Ad esempio:
echo "1,2" | tac -b -s ,
produce il seguente output:
,2
1
Q4. Come fare in modo che tac accetti l'input da STDIN?
Nel caso in cui desideri che il comando tac accetti l'input dall'input standard, non passargli alcun nome di file.
tac
Una volta eseguito il comando nel modo sopra menzionato, attenderà l'inserimento del contenuto. Una volta che hai finito, premi Ctrl+d per indicare che hai finito, quindi tac produrrà il suo output su STDOUT.
Conclusione
Come puoi vedere, tac è facile da capire e con cui lavorare. Il numero di opzioni della riga di comando che offre è limitato e ne abbiamo discusso la maggior parte qui. Puoi saperne di più sul comando andando alla sua pagina man.