대기열에서 특정 번호를 가져옵니다.

대기열에서 특정 번호를 가져옵니다.

이 파일이 있어요

    123 My name is Lorry I'm 29 years old 10000 45
    148 Name - Dan 20000 18
    895 My name is John Lazaro I like tennis 30000 63

한 줄의 마지막 숫자를 인쇄하고 싶습니다.

45
18
63

이것이 가능합니까?

업데이트: 이제 인쇄하고 싶습니다.

10000
20000
30000

답변1

귀하의 경우 마지막 (공백으로 구분된) 단어는 숫자입니다. 항상 그런 경우라면 다음과 같이 마지막 단어를 인쇄하는 것으로 문제를 단순화할 수 있습니다.

awk 'NF {print $NF}'

또는

sed 's/.* //'

이전 항목의 경우:

awk 'NF >= 2 {print $(NF-1)}'

마지막 단어를 인쇄하려는 경우 양의 십진 정수이면 다음과 같습니다.

awk '$NF ~ /^[0-9]+$/ {print $NF}'

(이전 것으로 교체 $NF) $(NF-1).

각 줄의 가장 오른쪽에 있는 10진수 시퀀스를 인쇄하려면 다음을 수행하세요.

sed -n 's/^/./;s/.*[^0-9]\([0-9]\{1,\}\).*/\1/p'

이전 항목의 경우:

sed -n 's/^/./;s/.*[^0-9]\([0-9]\{1,\}\)[^0-9].*[0-9].*/\1/p'

답변2

awk다음을 사용하여 마지막 커밋을 인쇄 해 볼 수 있습니다 .

awk '{ print $NF }' file

마지막 필드 옆에 있는 인쇄 필드의 경우:

awk '{ print $(NF - 1) }' file

답변3

업데이트된 출력이 필요한 사람이 있으면 다음을 입력하세요.

awk '{print $(NF-1)}' file.txt

관련 정보