다음과 같은 줄이 많은 파일이 있습니다.
1 jfkdajfd 1 2 3 5
2 fkldfjld
3 fdkfloaf 9 10
4 fldfldkf
5 fdskf;ak 12 1 4
나는 모든 숫자를 가져와서 파일의 한 열에 넣고 싶습니다.
1
2
3
5
9
10
12
1
4
어떻게 해야 하나요? 감사해요
답변1
노력하다
awk '{ for (i = 1; i <= NF; i++) if ($i + 0 == $i) print $i }' < input > output
유효한 숫자 x + 0 == x
인지 테스트 한 다음 원래 문자열을 인쇄하는 데 사용합니다 . 숫자(부동 소수점 숫자, 음수 및 많은 구현에서 16진수 포함)를 원하는지 또는 다른 숫자를 원하는지는 사용자에게 달려 있습니다 .x
awk
awk
답변2
어때요?
tr -cs 0-9 '[\n*]' < input | grep . > output