$ cat test.txt
kim 100
lee 99
$ j=`awk '{ print $2 }' test.txt`; echo $j
100 99
bash 에서는 위처럼 하면 됩니다. (csh 에서는 적당히 수정요)
개행문자를 처리하는 방법에는 여럿 있겠지만,
가장 간단한 것은 perl 이라고 생각합니다.
셸에서 텍스트를 처리할 때 sed, awk 등을 사용하게 되는데
저도 예전까지는 sed 만을 고집하고 있었습니다만..
문자열의 양이 많거나, 특히 한 라인이 매우 긴 텍스트를 처리하는데
sed, awk 는 속도면에서 문제가 많습니다.
perl 은 같은 알고리듬에서 최고 수십배 정도의 속도를 보이더군요.
요컨데 간단한 문자열 조작이라면 sed, awk,
그렇지 않다면 여지없이 perl 입니다.
: 일단 test.txt 라는 파일의 내용이 다음과 같습니다.
:
: #cat test.txt
: kim 100
: lee 99
:
: 그런데 두번째 필드만 뽑고 싶다면 다음과 같이 할 것 입니다.
: #awk '{ print $2 }' test.txt
:
: 결과는 다음과 같이 출력 될 것 입니다.
: 100
: 99
:
: 그런데 제가 궁금한 것은 두 줄로 표현되는데 한줄로 표현하고 싶습니다.
: 100 99 ------> 이런한 방법으로
: 이렇게 개행라인을 억제하는 방법을 알고 싶습니다.
: 제가 나름대로 노력 해봤는데 잘 안되는군요...
: 혹시 알고 계시면 알려주세요...부탁드립니다.
:
: --
: ps : 읽어주셔서 감사합니다.--이 곳에 서명을 적어주십시옹...