shell + awk
글쓴이: jungwook / 작성시간: 금, 2010/03/12 - 5:54오후
안녕하세요?
A라는 파일에는 해당 디렉토리의 모든 *.txt파일의 길이가 저장되어 있구요.
wc -l *.txt > A
그럼 A는
2410
3402
3211
그리고 제가 하고자 하는 것은
이 파일에서 하나의 라인들을 읽어와서 변수에 저장하고
그 길이를 비교해서 가장 긴 라인, 작은 라인을 가진 파일들을 awk로 처리하는 것인데
어떻게 배열이나 변수에 저장할 수 있을까요??
그리고 awk에서 사용한 변수는 awk블럭이라해야되나??
이걸 벗어나서도 사용할 수 있는 방법이 있나요??
즉 전역 변수개념처럼 쉘 스크립트 말하는 겁니다.
$(rm -rf gnuplot) $(mkdir gnuplot) dir=$(pwd)/new_data for file in *.txt do awk ' BEGIN {OFS="\t";i=1; x=1000000000; print "#x", "y";}; { if(NR != 1) { { print ((i-1)*x), $15} } i++ }' $file > $dir/$file done [\code] 간단하게 이런 코드내에서 즉 A라는 파일을 읽어와서 awk 블럭에 넣고 싶네요 if( NR == 파일길이 ) { ~~~~~ } 이런식의 처리를 하고 싶습니다.
Forums:
댓글 달기