열을 사용하여 파일을 반복합니다.

열을 사용하여 파일을 반복합니다.

나는 많은 쓰레기와 내가 관심 있는 열(열 4)을 포함하는 file.txt라는 파일을 반복하려고 합니다. 나는 이 루프가 0부터 eof까지 실행되기를 원합니다. 열 4의 각 값에 대해 다른 스크립트를 호출하고 싶습니다.

답변1

열 4의 각 값에 대해 스크립트를 호출하려면 다음과 같이 사용합니다.

awk '{system("./your_script.sh " $4)}' inputfile

답변2

수행 방법에 대한 또 다른 버전이 있습니다. 이번에는 쉘 내장 기능만 사용합니다.

while read line ; do
    set $line
    echo $4
done <filename

echo스크립트로 바꾸십시오 .

답변3

귀하의 열이 공백으로 구분되어 있다고 가정합니다.

for value in $(cat file.txt | tr -s ' ' | cut -d ' ' -f4); do
  ./my_script.sh $value
done

설명하다:

  • tr -s ' '열이 단일 공백으로 구분되도록 연속 공백을 억제합니다.
  • cut -d ' ' -f4단일 공백을 구분 기호로 사용하여 네 번째 열을 선택합니다.

답변4

sed 1d $outfile1 | while read "column on file" do

done

관련 정보