Использование команды head и tail в unix для извлечения элементов из файла - PullRequest
0 голосов
/ 21 декабря 2018

В настоящее время я новичок в области фильтров в Unix и только познакомился с основными командами в Unix.

У меня есть файл emp.lst, который состоит из следующих деталей в моем Ubuntu

cat emp.lst

2233|a.k.shukla|g.m.|sales|12/12/52|6000
9876|jai sharma|direcor|production|12/03/50|7000
5678|sumit chakraborty|d.g.m|marketing|19/04/43|6000
2365|barun sengupta|director|personnel|11/05/47|7800
5423|n.k. gupta|chairman|admin|30/08/56|5400
1006|chanchal singhvi|director|sales|03/09/38|6700
6213|karuna ganguly|g.m.|accounts|05/06/62|6300
1265|s.n. dasgupta|manager|sales|12/09/63|5600
4290|jayant choudhary|executive|production|07/09/50|6000
2476|anil aggarwal|manager|sales|01/05/59|5000
6521|lalit chowdary|director|marketing|26/09/45|8200
3212|shyam saksena|d.g.m.|accounts|12/12/55|6000
3564|sudhir aggarwal|executive|personnel|06/07/47|7500
2345|j.b.saxena|g.m.|marketing|12/03/45|8000
0110|v.k. agrawal|g.m.|marketing|31/12/40|9000

Теперь я понял, что head извлекает верхнее содержимое этого файла, а tail используется для доступанижнее содержимое.

$head -3 emp.lst returns the first 3 rows in the file emp.lst

аналогично, $ tail -2 emp.lst возвращает последние 2 строки в файле

Теперь, если бы мне пришлось извлечь их обе вместе, то есть первые 3 строкиот головы и последние 2 ряда от хвоста?В любом случае это может быть достигнуто?

Я также пытался $ head -3 emp.lst;tail -2 emp.lst \ Это дает требуемый результат, но я думаю, что;используется только для ввода нескольких команд в одной строке, а также $ head -3 emp.lst |Хвост -2 не работает.

1 Ответ

0 голосов
/ 21 декабря 2018

вы можете попробовать

(head -3; tail -2) < emp.lst

, если вы хотите проверить номер строки, которую вы можете сделать

cat emp.lst | nl | (head -3; tail -2) 
...