Linux, 텍스트 문서의 특정 부분 인쇄

Linux, 텍스트 문서의 특정 부분 인쇄

주어진 문서(문서의 항목)의 각 줄에 대해 사람의 이름과 나이를 인쇄하고 싶습니다. 어떤 Linux 명령을 사용해야 합니까? 정규식 패턴을 사용하는 grep을 기반으로 하길 바랍니다.

입력 문서 예:

Linda:F:Las Vegas, USA:18:telnet  
Steve:M:Leipzig, Germany:33:ftp
Henry:M:Milan, Italy:19:sftp 
Alice:F:Izmir, Turkey:32:pop3s
Robert:M:Verona, Italy:21:scp
Olga:F:Gorontalo, Indonesia:19:pop3s
Kimberly:F:Lille, France:25:ping
Henry:M:Oslo, Norway:26:ftp
Carol:F:New Delhi, India:23:pop3s
Thomas:M:New Delhi, India:32:http

답변1

당신은 그것을 사용할 수 있습니다 cut:

cut -d: -f1,4 file
Linda:18

Steve:33

Henry:19

Alice:32

Robert:21

Olga:19

Kimberly:25

Henry:26

Carol:23

Thomas:32

답변2

당신은 그것을 사용할 수 있습니다 awk:

$ awk -F':' '{print $1,$4}' file
Linda 18

Steve 33

Henry 19

Alice 32

Robert 21

Olga 19

Kimberly 25

Henry 26

Carol 23

Thomas 32

답변3

sed 's/\([^:]*:\)[^:].*:\([^:]*\):.*/\1\2/' < file

Linda:18
Steve:33
Henry:19
Alice:32
Robert:21
Olga:19
Kimberly:25
Henry:26
Carol:23
Thomas:32

관련 정보